Skip to content

Convert

Dedupe Bookmarks

Dedupe Bookmarks

Beta

Drop a bookmarks.html export from Chrome, Firefox, Edge or Safari and download a copy with every duplicate link removed. Tracking parameters and #fragments are ignored when comparing, and nothing is uploaded.

Use via API
  • Free, no sign-up
  • REST + MCP
  • Updated
  • Reviewed by Olgun Ozoktas

utm_ parameters, fbclid and gclid are ignored when comparing addresses. The link that is kept is written exactly as it was saved.

Bookmarks HTML Input
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Deduplicated Bookmarks

The bookmarks file without duplicates will appear here..

Why Use Our Bookmark Deduplicator?

Bookmarks multiply without anyone deciding to. Syncing two browsers into one profile, importing an old browser's favorites, and saving the same article once from a newsletter link and again from the site all leave copies behind, often differing only by a utm_source tag or a #section. Deleting them one at a time in a bookmark manager means spotting two nearly identical rows among hundreds. Dedupe Bookmarks reads the exported bookmarks.html, groups links that point at the same page, keeps the first copy of each, and gives back a file ready to import, plus a CSV that lists exactly what was removed.

Every major browser exports bookmarks in the Netscape bookmark file format: an HTML page of nested DL lists in which each folder is an H3 heading and each link is an A element with an HREF and an ADD_DATE. Real exports are not well-formed HTML, because DT and P elements are never closed. Dedupe Bookmarks reads the file with a single linear pass that tracks the folder stack, which copes with exports of many thousands of links without a DOM.

Duplicates are found by comparing a normalized form of each address. The host is lower-cased, the default ports 80 and 443 are dropped, a trailing slash is removed from the path, and by default utm_ parameters, fbclid, gclid and the #fragment are ignored. The rest of the query string is compared exactly, in its original order and encoding. The address written to the output is the one you saved, not the normalized form.

The output is a fresh bookmarks.html with one link per page, each in the folder of its first copy, with the original title and date. The duplicates CSV has four columns: normalized_url, count, titles and folder_paths. No link is opened or checked at any point.

How it compares

Browser extensions that remove duplicate bookmarks need permission to read and change every bookmark you have, and online cleaners take the file as an upload. Dedupe Bookmarks works on an exported copy inside the tab, shows exactly which addresses were merged, and leaves your live bookmarks alone until you choose to import the result.

Bookmark Cleanup Tips

  • Two links count as the same page when their addresses match after lower-casing the host, dropping a default port and a trailing slash, and, with the options on, removing utm_ parameters, fbclid, gclid and the #fragment. Every other query parameter matters, so page=2 and page=3 stay separate.
  • The first copy in the file wins: its title, its date and its folder are kept.
  • When copies of one link sat in different folders, the link stays in the folder of the first copy and the duplicates CSV lists every folder it was in, so nothing moves without a record.
  • The new file is rebuilt from the links, so favicons, Firefox tags and descriptions, separators and empty folders are not carried over.
  • Bookmarklets and other non-web addresses, such as javascript: and place: links, are compared exactly as written.

Frequently Asked Questions

How do I remove duplicate bookmarks in Chrome?

Export the bookmarks from Chrome's Bookmark manager with Export bookmarks, drop the bookmarks.html file on this page, and download the deduplicated copy. Then import it with Import bookmarks in the same menu. Import adds to what is already there, so clear or archive the old bookmarks first if you want only the clean set.

Which links count as duplicates?

Two bookmarks are duplicates when their addresses match after normalizing: the host is compared without regard to letter case, default ports and a trailing slash are ignored, and with the default options utm_ tracking parameters, fbclid, gclid and the #fragment are ignored too. Titles do not matter, so two differently named bookmarks for one page are still duplicates.

Will links that differ only by a tracking tag be merged?

Yes, while Ignore tracking parameters is on. A link saved as example.com/article?utm_source=newsletter and another saved as example.com/article are the same page and only the first is kept. Turn the option off to treat them as different links.

Which copy of a duplicate is kept?

The first copy in the file is kept, with its own title, its ADD_DATE and its folder. Browsers write bookmarks in the order they appear in the bookmark manager, so the copy higher up in your bookmarks is the one that stays.

What happens to my folders?

Folders are kept for every link that remains. A folder whose links were all duplicates of links elsewhere, and a folder that was already empty, is not written, and the page says how many folders that affected. When copies of one link lived in different folders, the link stays in the first copy's folder and every folder is listed in the duplicates CSV.

What is in the duplicates CSV?

One row per address that appeared more than once, with four columns: normalized_url, count, titles and folder_paths. Titles and folders are joined with a vertical bar, and a link at the top level shows as (top level). The CSV is a record of what was merged, so you can check it before deleting your old bookmarks.

Does it check whether my links still work?

No. No bookmark is opened, fetched or checked. Dead-link checking would send a request to every site in your bookmarks from your browser; this tool only compares the addresses written in the file.

Does it work with Firefox, Edge and Safari exports?

Yes. Chrome, Firefox, Edge and Safari all export the same Netscape bookmark file format, and Dedupe Bookmarks reads all of them, including Firefox exports with separators and Chrome exports with a long comment at the top.

Is my bookmarks file uploaded?

No. The file is read and rebuilt in your browser and no request carries it. A bookmarks export can reveal accounts, internal tools and reading habits, which is why it stays in the tab.

Can I turn the cleaned bookmarks into a spreadsheet?

Yes. Run the deduplicated file through FindUtils Bookmarks HTML to CSV to get one row per link with its folder path, title, address and date. CSV to Bookmarks HTML turns an edited sheet back into a file browsers import.

Rate This Tool

0/1000

Get Weekly Tools

Suggest a Tool