A bookmarks HTML viewer lets you open a bookmarks.html export and actually read it: this free tool turns the file into a collapsible folder tree you can search, sort and export, right in your browser tab. Drop in the file from Chrome, Edge, Firefox, Safari or any other browser, and within a second you can see every folder, every link, and the date each bookmark was saved. Nothing is imported into your browser and nothing leaves your device.
People reach for a bookmarks HTML viewer for a handful of reasons. You found an old export on a backup drive and want to know what’s in it before importing hundreds of stale links. You need one specific link from a file with 4,000 entries. You want the list in a spreadsheet. Or you’re about to restore bookmarks and want to confirm you’ve got the right file. This page covers each of those jobs, explains how the file format works, and is honest about what a viewer can’t do.
What is a bookmarks HTML file?
A bookmarks HTML file is the standard export format that every desktop browser uses to save bookmarks to disk: a plain HTML document in the Netscape Bookmark File format. The name comes from Netscape Navigator, which introduced it in the 1990s. Internet Explorer, Firefox, Chrome, Safari and Edge all adopted it, which is why a file exported from one browser imports into any other. Microsoft still hosts a description of the format in its Netscape Bookmark File Format reference.
The file is usually named bookmarks.html, though Chrome names exports by date (for example bookmarks_9_26_26.html), Edge uses favorites_9_26_26.html, and Safari writes Safari Bookmarks.html. The content is the same kind of document in every case.
How the Netscape bookmark format is structured
Open a bookmarks HTML file in a text editor and you’ll see something like this:
- The first line is
<!DOCTYPE NETSCAPE-Bookmark-file-1>, which tells importers what the file is. - A
<META>tag declares the character set, normally UTF-8. - A
<DL><p>opens the top-level list. Each entry is a<DT>. - A folder is a
<DT><H3>heading followed by its own nested<DL><p> … </DL><p>list. - A bookmark is a
<DT><A HREF="…">Title</A>link.
The format is loose by modern standards. Most <DT> and <p> tags are never closed, and the file is not valid HTML5. That’s why a proper parser matters: a naive script that splits on line breaks or counts tags will misplace bookmarks into the wrong folders. This viewer uses your browser’s own HTML parser and then walks the nested lists, so folder structure comes out the same way a browser import would see it.
The attributes: ADD_DATE, LAST_MODIFIED, ICON and more
The interesting data in a bookmarks HTML file lives in attributes that a browser never displays when you open the file directly.
| Attribute | Appears on | What it stores |
|---|---|---|
HREF |
Links | The bookmarked URL |
ADD_DATE |
Links and folders | When it was created, as a Unix timestamp in seconds (1700000000 is November 14, 2023) |
LAST_MODIFIED |
Mostly folders | When the folder’s contents last changed, in the same format |
ICON |
Links | The site’s favicon, embedded as a base64 data:image/png URI |
ICON_URI |
Links (Firefox) | The address the favicon was loaded from |
PERSONAL_TOOLBAR_FOLDER |
One folder | Set to "true" on the folder that becomes the bookmarks bar |
TAGS, SHORTCUTURL |
Links (Firefox) | Firefox tags and keyword shortcuts |
A Unix timestamp counts seconds since January 1, 1970 UTC (Unix time on Wikipedia). The viewer converts ADD_DATE into a readable date in your local time zone. Some third-party exporters write milliseconds or microseconds instead of seconds; the parser detects oversized values and scales them so dates don’t land in the year 50,000.
The ICON attribute explains a common puzzle: why a file with 800 bookmarks can be 3 MB. Each favicon is embedded as text. The viewer shows those embedded icons next to each link, which makes long lists much easier to scan, and it never fetches favicons from the internet, so opening the file doesn’t reveal your bookmarks to any website.
How do you open a bookmarks HTML file?
You can open a bookmarks HTML file by double-clicking it (it opens in a browser as a plain list), by importing it into a browser (the links become real bookmarks), or by loading it into a viewer like the one above (you get a searchable tree without importing). Which one is right depends on whether you want to read the file or use it.
Open a bookmarks HTML file directly in your browser
The simplest way to open bookmarks HTML file exports is to double-click bookmarks.html, or drag it onto an open browser window. The address bar shows a file:// path and the page lists your folders as headings with links underneath. That works for a quick look, but it has real limits:
- Every folder is expanded at once, so a large file becomes one very long page.
- There are no dates.
ADD_DATEis in the file but the browser ignores it. - There’s no search beyond Ctrl+F (Cmd+F on Mac), which can’t show you which folder a match lives in once you’ve scrolled past the heading.
- No sorting, no counts, no export.
- Favicons don’t render, because the
ICONattribute isn’t a real HTML attribute on a link.
For a file with 50 bookmarks, opening it directly is fine. For a file with 5,000, a dedicated viewer saves a lot of scrolling.
Opening it in this free bookmark file viewer
Drop the file onto the viewer at the top of this page. It detects the format from the content, not the file name, so a renamed file or a file with no extension still works. You get:
- A collapsible folder tree with a count on every folder (including everything in its subfolders), so you can see at a glance where the bulk of your bookmarks live.
- Instant search across titles and URLs, with matching text highlighted and each result’s folder path shown.
- Sorting by file order, title A to Z or Z to A, newest or oldest added, or website.
- A Date added column built from
ADD_DATE. - Stats: total bookmarks, folders, distinct websites, duplicate URLs, the date range, and the most-saved sites.
- Export to CSV, JSON, or a new bookmarks.html containing just your search results.
Every link opens in a new tab. Bookmarklets (javascript: links) and other non-web addresses are shown as text with a label rather than made clickable, so nothing in an old file can run code when you click it.
Opening a bookmarks file on iPhone or Android
Phones make this harder, because neither iOS nor Android has a bookmark import option in its mobile browsers, and Chrome on Android and iOS doesn’t support extensions. You have two options:
- Use this viewer in your phone’s browser. Tap the drop zone, choose the file from the Files app (iPhone) or your Downloads folder (Android), and browse it like you would on a computer. This is the most reliable way to view bookmarks HTML on a phone.
- Open the file from the Files app. On iPhone, tapping an
.htmlfile in Files shows a Quick Look preview of the list. On Android, tapping it may offer to open it in Chrome or an HTML viewer app. Both show the same plain, static list as a desktop browser, with no search or dates.
If you want the bookmarks on your phone as real bookmarks, import the file into a desktop browser that syncs with your phone (Chrome with sync turned on, or Safari with iCloud), and they’ll appear on the phone after syncing.
How do you view bookmarks HTML files from each browser?
You view bookmarks HTML files from any browser the same way: export the file, then drop it into the viewer. The export menus differ, so here is where each one lives as of September 2026, along with where the browser keeps its live bookmarks file if you’d rather read that directly.
| Browser | How to export bookmarks.html | Live bookmarks file (the viewer reads it too) |
|---|---|---|
| Chrome | ⋮ menu → Bookmarks and lists → Bookmark manager → ⋮ (top right) → Export bookmarks | Bookmarks in the profile folder (JSON) |
| Edge | Favorites (edge://favorites) → More options (…) → Export favorites |
Bookmarks in the Edge profile folder (JSON) |
| Brave, Opera, Vivaldi, Arc | Bookmark manager → menu → Export bookmarks | Bookmarks in the profile folder (JSON) |
| Firefox | Library (Ctrl+Shift+O, or Cmd+Shift+O on Mac) → Import and Backup → Export Bookmarks to HTML | places.sqlite (not readable here; export HTML instead) |
| Safari (Mac) | File → Export → Bookmarks | Bookmarks.plist (binary; export HTML instead) |
Google documents the Chrome steps in its Chrome import and export help page, Mozilla covers the Firefox steps in Export Firefox bookmarks to an HTML file, and Apple covers Safari in Export Safari data to another browser.
Chrome’s live Bookmarks file sits in these locations for the default profile:
Windows: %LOCALAPPDATA%\Google\Chrome\User Data\Default\Bookmarks
macOS: ~/Library/Application Support/Google/Chrome/Default/Bookmarks
Linux: ~/.config/google-chrome/Default/Bookmarks
Other profiles use Profile 1, Profile 2 and so on instead of Default. Next to Bookmarks you’ll usually find Bookmarks.bak, the single backup Chrome keeps. Copy the file somewhere else before opening it, especially while Chrome is running, so you never edit the live copy by accident. On ChromeOS these profile files aren’t reachable from the Files app, so export bookmarks.html instead.
Firefox is the one browser whose automatic backups need extra care. The files in its bookmarkbackups folder use a compressed .jsonlz4 format that this viewer can’t decompress. A manual backup (Library → Import and Backup → Backup…) produces plain .json, which the viewer reads, and the HTML export always works.
How do you search bookmarks file contents quickly?
To search a bookmarks file, load it into the viewer and type in the search box; results update as you type, with matched words highlighted in both the title and the URL and the full folder path shown for each hit. This is the part that a raw file:// view or a text editor handles worst, because they can’t tell you where a match sits in your folder hierarchy.
A few techniques make searching an old export faster:
- Search by site. Typing a domain like
github.comornytimesfinds every bookmark from that site, even ones with vague titles like “Untitled” or “Home”. - Use several words. Every word must match, in any order, so
tax 2024 deductionnarrows a big file to a handful of results. - Search folder names too. Tick “Also match folder names” to include the folder path in the search, so
recipesfinds everything in your Recipes folder even when the word isn’t in the titles. - Sort the results. Switch to “Newest added first” to see what you were saving just before the export, or “Oldest added first” to dig out bookmarks from years back.
- Export the matches. When a search is active, the export buttons export only the matching bookmarks. That’s a quick way to pull one project’s links out of a huge file.
Search runs against an index built once when the file loads, so it stays fast on files with tens of thousands of bookmarks. The results list shows 500 rows at a time with a “Show more” button, so the page stays responsive on large files.
How do you convert a bookmarks HTML file to CSV or Excel for free?
You convert a bookmarks HTML file to CSV by opening it in the viewer and clicking the CSV button; the file downloads with one row per bookmark and opens directly in Excel, Numbers or Google Sheets. It’s free and needs no signup or macros.
The CSV has these columns:
| Column | Contents |
|---|---|
| Title | The bookmark’s name as saved |
| URL | The full address |
| Folder | The folder path, separated by / (for example Bookmarks bar / Recipes) |
| Domain | The website, without www. |
| Date added | ISO 8601 date and time in UTC, when the file has ADD_DATE |
| Last modified | ISO 8601, when the file has it |
The CSV starts with a UTF-8 byte order mark, so Excel on Windows shows accented and non-Latin titles correctly instead of garbled characters. In Google Sheets, use File → Import → Upload and choose the CSV. Once it’s in a spreadsheet you can use filters, pivot tables by domain, or conditional formatting on dates, which is handy for audits like “what did I save in 2019 that I’ve never opened since”.
The JSON export gives you the same fields as an array of objects, with the folder path as an array. That’s the easier format if you’re feeding the list into a script, a notes app, or a database.
The third export, bookmarks.html, writes a fresh Netscape-format file containing whatever is currently shown: everything, or just your search matches, in their original folders. It’s a clean way to split one big export into smaller topic files before importing only the ones you want.
How do you restore bookmarks from a bookmarks.html file?
You restore bookmarks from a bookmarks.html file by importing it into your browser; the viewer’s job is to confirm first that the file holds what you expect. Viewing never changes anything in any browser, so it’s a safe first step when you’re not sure which of several old exports is the right one.
A sensible restore routine:
- Open each candidate file in the viewer. Compare the bookmark counts, the date ranges and the folder names. The file with the newest “Added between” date is usually the one you want.
- Check for the folders you’re missing. Search for a couple of links you know should be there.
- Optionally trim it. If you only need one folder back, search for it (with folder names ticked) and export those results as a new bookmarks.html, so you don’t re-import thousands of bookmarks you already have.
- Import it. In Chrome: ⋮ → Bookmarks and lists → Import bookmarks and settings → choose “Bookmarks HTML File” → Choose file. In Firefox: Library → Import and Backup → Import Bookmarks from HTML. In Safari: File → Import From → Bookmarks HTML File. In Edge: Settings → Profiles → Import browser data → Favorites or bookmarks HTML file.
Chrome normally places imported bookmarks in a new folder rather than merging them into your existing ones, so an import won’t overwrite anything, but it can create duplicates if some bookmarks were already there. Our free duplicate bookmark finder cleans that up afterwards. If your problem is bookmarks that disappeared from Chrome and you have no export at all, the Chrome bookmarks recovery tool works from Chrome’s own Bookmarks.bak file instead. For the full walkthrough of both directions, see our guides on exporting bookmarks from Chrome and importing bookmarks into Chrome.
Other ways to view a bookmarks file, and when they’re better
A dedicated viewer isn’t the only way to read a bookmarks file, and for some jobs another option is simpler. Here’s an honest comparison.
- Opening the file in a browser (
file://). Built in, instant, and fine for small files. Better than any tool when you just want to click one link you can see. Worse for anything large, because it has no search context, dates, sorting or export. - A text editor (VS Code, Notepad++, BBEdit). Shows the raw markup, including every attribute, and handles huge files. Better when you need to see or fix the exact markup, for example a broken tag that stops an import. Worse for browsing, since folders are just indentation and dates are raw numbers.
- Importing into a spare browser profile. Create a new Chrome or Firefox profile, import the file there, and browse it in the real Bookmark Manager. Better when you want to use the bookmarks for a while without touching your main profile. Slower to set up, and it adds a profile you’ll need to delete later.
- Spreadsheet import of a converted CSV. Better for audits, counting and filtering by date once you have the data. You still need something to produce the CSV, which is where this viewer’s export comes in.
- Bookmark manager apps and extensions. Some import bookmarks.html into their own library. Better if you’re choosing a new home for your bookmarks anyway. Worse if you only want to look, since they typically want an account and keep a copy of your data on their servers.
- Browser import, then browse. Better when you’ve already decided you want the bookmarks back. Worse when you’re unsure, because undoing an import of thousands of links means deleting them by hand.
Where this bookmarks HTML viewer is better: it reads the dates and icons a browser ignores, searches titles and URLs together with folder context, handles Chrome’s JSON files as well as HTML, exports to CSV/JSON/HTML, and runs locally without an account or an import you’d have to undo.
What can’t the viewer do?
The viewer is read-only and offline by design, which means a few things are out of scope:
- It can’t check whether links still work. It never contacts the bookmarked sites. To test links, use the free bookmark dead link checker, or try the rot check to see how link rot affects a typical collection.
- It can’t edit the original file. It can export a trimmed copy, but it never modifies what you dropped in.
- It can’t read compressed or binary formats. Firefox
.jsonlz4backups, Firefox’splaces.sqliteand Safari’sBookmarks.plistneed to be exported as HTML first. - It can’t recover data that isn’t in the file. If a bookmark was deleted before the export was made, it isn’t there to find.
- It can’t show dates the exporter didn’t write. Safari’s export typically omits
ADD_DATE, so its bookmarks show a dash in the Date added column.
Troubleshooting: common problems opening a bookmarks file
Most problems opening a bookmarks file come down to picking the wrong file or a file in a format meant only for one browser. This table covers what people run into most often.
| Symptom | Likely cause | Fix |
|---|---|---|
| “This doesn’t look like a bookmarks file” | You picked a saved web page, a shortcut, or an unrelated HTML file | Export again from the browser’s Export bookmarks option and use that file |
Error mentioning .jsonlz4 |
A Firefox automatic backup, which is compressed | In Firefox use Library → Import and Backup → Export Bookmarks to HTML |
Error mentioning .plist |
Safari’s internal Bookmarks.plist | In Safari use File → Export → Bookmarks |
| “Contains no bookmarks” | The export was made from an empty profile or a sync tool wrote an empty file | Check you exported from the right profile; try Bookmarks.bak |
| JSON “couldn’t be read” | A Chrome Bookmarks file copied while Chrome was writing it, or a cut-off download |
Close Chrome, copy the file again, or try Bookmarks.bak |
Titles show odd characters like é |
The file was saved in a legacy encoding by an old browser | Re-export from a current browser; modern exports are UTF-8 |
| Dates show as a dash | The exporter didn’t write ADD_DATE (common with Safari) |
Nothing to fix; the dates aren’t in the file |
| Dates look wildly wrong | A third-party tool wrote a non-standard timestamp unit | The viewer scales milliseconds and microseconds automatically; if dates are still off, the source tool wrote bad data |
| Bookmarks appear in the wrong folder | The file was hand-edited and has a missing </DL> |
Open it in a text editor and fix the nesting, or export again |
| Page is slow with a huge file | Tens of thousands of bookmarks with embedded icons | Use search or the flat list view; folders render 500 items at a time |
| Clicking a link does nothing | It’s a javascript: bookmarklet or a non-web address |
These are shown as text on purpose; copy the URL if you need it |
If your file opens but looks smaller than expected, compare it with other exports. Old exports are snapshots: anything added after the export date simply isn’t in the file.
Why dead links matter more in old exports
Old exports are where link rot shows up most, because every year that passes between saving a page and opening the file raises the chance that the page has moved or vanished. Browsing a years-old export in the viewer, you’ll often recognise titles for sites that no longer exist. The viewer can’t tell you which ones, because it works offline, but the date added column gives you a strong hint about where to look first.
If you’d rather give an old export a working home instead of just reading it, that’s what Bookmend is built for. It’s an AI-native bookmark manager for Chrome and the web, and it imports a bookmarks.html file directly, the same file you just opened here, up to 20,000 bookmarks per import, with your folders coming in too. Bookmend reads each saved page, keeps its readable text, writes a short summary and suggests tags, and lets you ask your library questions in plain language, with answers that cite the bookmarks they came from. Its link health feature checks saved links in the background, at most once a day, flags dead ones, and offers the Wayback Machine snapshot closest to when the page last worked. You can export again at any time. The Free plan covers saving, collections, tags, search, and import and export; AI features and link health are Premium, and free for new accounts during early access. It runs in Chrome, Brave, Edge, Arc and Opera, plus the web app. See all the features or how it works.
Is the bookmarks HTML viewer private and free?
Yes. The bookmarks HTML viewer is free, has no signup, and processes your file entirely inside the browser tab you have open. The file is read with the browser’s standard file API and parsed in memory; no bookmark data is sent anywhere, no favicons are fetched, and closing or reloading the tab clears everything. There’s no account, so there’s nothing stored about you or your bookmarks between visits.
That matters because a bookmarks file can be surprisingly personal: bank logins, medical portals, job searches, private documents shared by link. Viewing it locally means you can inspect an old export on a shared or work computer without handing its contents to a third-party service.
The same approach applies to the other free tools on this site. They run in your browser whenever the job can be done there, and only the network-based checks, like testing whether a link is dead, contact outside servers.
Written by Nafiul Hasan, Founder, Bookmend. Last updated.