Extract URLs from Text
Pull every link out of text, HTML or Markdown, strip tracking parameters, filter by domain and list full URLs, hostnames or root domains.
This guide is not yet available in your language and is shown in English.
Tool guide
What this tool does
Extract URLs from Text finds web addresses in any content, including links without https:// that start with www. It trims punctuation that belongs to the sentence, removes utm_ and click-ID parameters on request, and can reduce the list to unique hostnames or registrable domains.
Links are scattered through chat exports, newsletters, documents and page source. When you need them as a list, for a link audit, a migration or a reading list, copying them one by one is slow and error-prone, and naive copying picks up the full stop or closing bracket that followed the link in a sentence.
This extractor matches http, https, ftp and WebSocket URLs, plus optional www. links and bare domains. Trailing punctuation is removed using the same rules as most linkifiers: dots, commas and quotes at the end are dropped, while a closing bracket is kept only when the URL contains a matching opening one, so Wikipedia links such as …/URL_(disambiguation) survive. HTML-escaped ampersands are decoded. The tracking option removes utm_*, fbclid, gclid and similar parameters. Hostnames are parsed with the browser’s URL parser, and everything runs locally.
How to use Extract URLs from Text
- Paste plain text, HTML source, Markdown or log output into the input box.
- Choose the Output: full URLs, hostnames only or root domains only.
- Decide whether to include links starting with www. and bare domains such as example.com.
- Restrict the Protocol if you only want HTTPS or HTTP links, and turn on tracking-parameter removal if needed.
- Use “Filter by domain” to keep or exclude particular sites, and set duplicates and sorting.
- Pick a separator, then copy or download the list; the host summary shows how many links point to each site.
Tips for better results
- Switch Output to root domains to see which external sites a page links to, regardless of subdomain.
- Filter to HTTP only to find insecure links that should be upgraded to HTTPS.
- Removing tracking parameters before sharing a link protects the privacy of the person who sent it to you.
- Bare-domain matching is limited to common endings to avoid treating file names like report.pdf as websites.
Common use cases
- Collecting all outbound links from a blog post’s HTML to check them for broken pages.
- Building a reading list from links shared in a team chat export.
- Listing the domains referenced in a document for a security or compliance review.
- Cleaning campaign links of utm_ parameters before publishing them elsewhere.
Common mistakes to avoid
- Pasting the rendered page text instead of the HTML source, which loses links hidden behind anchor text.
- Expecting root-domain output to be exact for every country; it recognises common second-level suffixes like co.uk and co.in, but not every entry in the Public Suffix List.
- Leaving duplicates on when counting links per site and then double counting repeated links.
Frequently asked questions
Which link types are recognised?
URLs starting with http://, https://, ftp://, ftps://, sftp://, ws:// and wss://, plus optional links that start with www. and bare domains ending in common suffixes such as .com, .org, .io or .in.
How does it decide where a URL ends?
A URL ends at whitespace, quotes or angle brackets. Final dots, commas, colons, exclamation marks and question marks are then removed, and closing brackets are removed only if they are unbalanced within the URL.
What does root domain mean here?
It is the part of the hostname you would register, such as example.com from shop.example.com, or example.co.uk from www.example.co.uk. Two-letter country endings that commonly use co, com, org, net, gov, ac or edu are handled.
Which tracking parameters are removed?
All utm_ parameters plus fbclid, gclid, dclid, msclkid, yclid, igshid, mc_cid, mc_eid, _hsenc, _hsmi and ref_src. Other query parameters, which may be needed for the page to work, are kept.
Feedback & suggestions
Help us improve Extract URLs from Text. We read every message.