What does Open All URLs do?
Open All URLs takes a list of web addresses, one per line, and opens each one in a new browser tab when you click a single button. It saves you from copying and pasting links one at a time when you're checking a batch of pages, reviewing search results, or reopening a research session from a saved list.
How to open multiple links at once
- Paste your URLs into the input box, one per line. Blank lines and spaces around each URL are ignored.
- Make sure every line starts with
http://orhttps://. - Click Open All.
- If only the first tab opened, allow pop-ups for this site (see below) and click Open All again.
For example, this input:
https://example.com
https://www.w3.org/
HTTPS://EXAMPLE.ORG
opens three tabs. The blank line is skipped, the leading spaces on the second URL are trimmed, and the uppercase HTTPS:// is accepted. The output box then says "Attempted to open 3 URL(s) in new tabs".
Why only some tabs open: pop-up blockers
Opening a tab from JavaScript uses window.open(), and every modern browser restricts it. As MDN puts it, pop-ups must be opened in direct response to user input, and "a separate user gesture event is required for each Window.open() call". One click on Open All counts as one gesture, so by default the browser lets the first tab through and blocks the others.
The fix is to give this site permission once:
| Browser | Where to allow pop-ups |
|---|---|
| Chrome / Edge | Click the blocked pop-up icon at the right of the address bar, choose "Always allow pop-ups and redirects", then Done |
| Firefox | In the bar that says Firefox prevented the site from opening pop-ups, click Options (or Preferences) and choose to allow pop-ups for this site |
| Safari (Mac) | Safari > Settings > Websites > Pop-up Windows, then set this site to Allow |
After that, one click opens every URL in the list. The permission applies to this site only; other sites still have pop-ups blocked.
The tool can't tell which tabs were blocked. It opens links with noopener, and in that mode window.open() returns nothing whether or not the tab opened. That's why the message says "attempted" rather than reporting a count of successes.
What counts as a valid URL
The check is deliberately simple. A line passes if it starts with http:// or https://, in any letter case, and the tool doesn't check anything after that. So:
| Line | Result |
|---|---|
https://example.com/page?id=1 |
Opens |
HTTP://example.com |
Opens |
example.com |
Rejected, add https:// |
www.example.com |
Rejected, add https:// |
ftp://files.example.com |
Rejected, only web links are allowed |
https:// |
Accepted, but opens a blank or error tab |
If any line fails, nothing opens and the error names the first bad line. That stops a half-finished run where you're unsure which links were opened.
Because javascript:, data: and file: links can't pass the check, the tool can only ever open ordinary web pages.
Privacy
Every tab opens with noopener and noreferrer. The destination page receives no Referer header, so it can't see that you came from this site, and it gets no JavaScript handle back to this page. The list itself never leaves your browser.
Preparing your list
Lists copied from spreadsheets, emails or crawl reports are often messy. A few other tools help clean them up before you open anything:
- Remove duplicate lines so the same page doesn't open twice.
- Sort the lines alphabetically to group URLs from the same domain.
- Find and replace to add a missing
https://to every line at once. Tick the regular-expression option, find(^|\n)(?!https?://)and replace it with$1https://. Lines that already have a scheme are left alone, soexample.comandwww.example.orggainhttps://whilehttps://w3.orgdoesn't change. - Decode URLs that are full of
%20and other percent-encoded characters if you want to read them first.
Last updated