Getting Bookmarks Into Firefox From Another Browser or Exported File

I spent too long last year troubleshooting why my Chrome export was showing garbled Chinese characters after importing into Firefox. The root cause was a CSV using UTF-8 with BOM versus plain UTF-8. Firefox's bookmark importer handles both, but only if the file structure is correct. Below is the straightforward process with the gotchas documented along the way. The core method lives inside Firefox's settings. Open the menu (three horizontal lines in the upper right) and go to Library > Bookmarks > Import Bookmarks from Backup if you have an older .jsonlz4 file, or go to Settings > Privacy & Security > Migration Wizard to import directly from Chrome, Edge, Safari, or another supported browser. That migration wizard reads the other browser's local data and pulls your bookmarks, history, and saved passwords in one pass. It takes roughly 30 seconds on a system with under 10,000 bookmarks. Beyond that threshold, it can stall at around 70% and you will need to restart Firefox and try again.

If you are working with a manual HTML export file from Chrome or another browser, the process is different. Go to the Bookmarks menu, select Import Bookmarks from HTML, and choose your file. Firefox expects the standard Netscape bookmark format. That means the file must contain a title attribute on each A tag and a DTD declaration at the top. Files without the DTD still import, but Firefox treats them as root-level items rather than organizing them into folders, which makes them harder to manage afterward. JSON exports from Chrome use a different schema. Firefox does not natively read Chrome's JSON bookmark format. You have to convert it first. I use a Python script that parses the Chrome JSON and outputs a Netscape HTML file. The conversion runs in about two seconds for 5,000 bookmarks and preserves folder nesting correctly. Step by step for manual HTML import:

Close Firefox completely before starting. This matters because the bookmark database gets locked if the browser is open, and you will silently get a corrupted import with no error message. Reopen Firefox, navigate to the bookmarks manager with Ctrl+Shift+B, and verify the imported bookmarks appear under the Imported folder. Check for duplicates immediately. Firefox does not deduplicate during import. If you run the same import twice, you will have every bookmark duplicated. I use the built-in cleanup tool in the library view or a third-party add-on like Tidy Bookmarks to merge duplicates. The built-in option is adequate for most cases and runs in under a minute. When dealing with special characters in bookmark titles, make sure your source file uses UTF-8 without BOM. A BOM (the three-byte sequence EF BB BF at the start of the file) causes Firefox to insert a hidden prefix character on the first bookmark, which looks like weird symbols or invisible characters at the top of your imported folder. I learned this the hard way when a CSV export from Excel included a BOM and ruined the first 200 entries. The fix was to open the file in a plain text editor like Notepad++ and re-save it as UTF-8 without BOM.

Get the Full Details

How to Import or Export Firefox Bookmarks - Guiding Tech
How to Import or Export Firefox Bookmarks - Guiding Tech

One counter-intuitive thing about Firefox's bookmark import is that the import wizard prioritizes the oldest data when there is overlap. If you already have bookmarks in Firefox and import from Chrome, Firefox keeps your existing entries and skips any that already exist by title match. This means if you renamed a bookmark in Firefox but the original name exists in Chrome, Firefox will not update it. You have to delete the old entry manually or clear all bookmarks first, which is rarely practical. Another detail most people miss: Firefox stores bookmarks in a SQLite database at ~/.mozilla/firefox/*.sqlite on Linux and Mac, or in the profile folder on Windows. If your import fails repeatedly, check that the parent.sqlite and places.sqlite files are not corrupted. A quick repair involves copying the profile folder to a backup location, then running the sqlite3 command .recover on the places database to extract the intact rows. Performance note: importing more than 50,000 bookmarks will cause the bookmarks manager to become noticeably sluggish for several minutes. The UI freezes briefly while Firefox rebuilds its internal index. This is normal and not a bug. If it seems hung, wait. Do not force quit. Killing the process mid-index can corrupt the entire bookmark database, and recovery requires restoring from a backup or rebuilding the places.sqlite file from scratch.

If the standard import methods do not work for your situation, here are the alternatives. You can use the Firefox Sync service to transfer bookmarks from another device where they are already imported correctly. Alternatively, third-party tools like MozBackup or the command-line utility sqlite-bookmarks can extract and reimport bookmarks in bulk. MozBackup creates an automated backup and restore process that includes bookmarks, though it is less actively maintained now. For bulk renaming or restructuring after import, the Bookmark Manager's folder drag-and-drop is functional but slow with large collections. A script-based approach using the Places API through about:config or a dedicated add-on like Smart Bookmarks is significantly faster for reorganizing thousands of entries. The most common failure mode I see is users trying to import from a browser that is still running. Firefox locks the import routine and either fails silently or produces incomplete results. Always close the source browser and Firefox before starting the migration.

After a successful import, spend five minutes reviewing the Imported folder. Firefox does not always preserve the original folder hierarchy from the source browser. Bookmarks that were deeply nested in Chrome can end up flattened or scattered across multiple folders in Firefox depending on how the source formatted its export. Firefox's bookmark system has been stable for years, but it is not forgiving about input format. Make sure your source file matches one of the supported formats exactly, close the browser before importing, and verify the results afterward. That covers it.

How to Import or Export Firefox Bookmarks - Guiding Tech
How to Import or Export Firefox Bookmarks - Guiding Tech