Save 50% on Marqly yearly — now $48/year. Upgrade →

Find duplicate bookmarks in your export

Upload a bookmarks HTML file, see every duplicate grouped by URL, and download a deduplicated copy. Runs entirely in your browser.

Why duplicate bookmarks pile up

Nobody saves the same page twice on purpose. Duplicates come from the mechanics of saving: you bookmark an article from a newsletter link (with utm_source bolted on), then again months later from the address bar. Sync merges the bookmarks from an old laptop into your current profile. You import an export "just to be safe" on a new machine without deleting anything first. Each of those events looks harmless; ten years of them means an export where a meaningful slice of the file is the same pages under slightly different URLs.

How the dedup logic works

Exact string comparison would miss most real duplicates, so each URL is normalized first:

  • Host lowercased — Example.com and example.com are one site.
  • Trailing slash stripped — /article/ equals /article.
  • Tracking parameters removed — utm_*, fbclid, and gclid identify the click, not the page.
  • #fragments ignored — they scroll the page, they don't change it.

Bookmarks whose normalized URLs match are grouped, and every group with more than one entry shows in the table with the titles it was saved under. Normalization is deliberately conservative: meaningful query strings (a search, a product ID, a video ID) are kept, so two genuinely different pages on the same domain never merge.

What the deduplicated download contains

A standard Netscape bookmarks HTML file — the same format browsers export — with one entry per unique URL, keeping the first occurrence's title and saved date. It is a flat list: folders are flattened, because merging "same URL, three different folders" into a tree has no correct answer. Chrome, Firefox, Edge, and Safari all import it; the import steps are in how do I import Chrome bookmarks. To inspect the file before or after, the bookmark file viewer opens it as a searchable table.

After the cleanup

Deduplication fixes the redundancy, not the findability — a flat list of two thousand unique links is still two thousand links. Importing the cleaned file into Marqly gets each one tagged and summarized by AI automatically, and semantic search finds "that piece about negotiating a raise" without you remembering its title or where you filed it.

Frequently asked questions

How does it decide two bookmarks are duplicates?

URLs are normalized before comparing: the host is lowercased, a trailing slash is stripped, tracking parameters (utm_*, fbclid, gclid) are removed, and #fragments are ignored. So the same article saved from a newsletter link and from the address bar counts as one page. Different query strings that actually change the page are kept apart.

Does the deduplicated file keep my folders?

No — the download is a flat list, one entry per unique URL, keeping the first occurrence with its title and saved date. Rebuilding a folder tree while merging entries that lived in different folders has no right answer, so we do the honest simple thing. Every browser imports the flat file fine.

Is my bookmarks file uploaded to a server?

No. Parsing, normalizing, grouping, and generating the deduplicated file all happen in your browser — the file never leaves your machine. There is no account, no quota, and nothing retained after you close the tab. Watch the network inspector if you want proof.

What do I do with the deduplicated file?

Import it back into your browser (after removing the old bookmarks, or into a fresh folder), or import it into Marqly, which reads standard bookmarks HTML directly and has AI tag and summarize every link so the cleaned pile actually becomes findable. Marqly is free to try, no card required.

← All free tools