Safari Bookmarks to HTML
BetaTurn Safari's Bookmarks.plist, binary or XML, from a Mac or a backup into a bookmarks.html that Chrome, Firefox and Edge import. Favorites, folders and the Reading List are kept.
- Free, no sign-up
- REST + MCP
- Updated
- Reviewed by Olgun Ozoktas
On this page, the file is read in your browser. It is not uploaded, and nothing is sent to iCloud.
Options
Where is Bookmarks.plist?
On a Mac, Safari keeps its bookmarks in one file in your user Library:
~/Library/Safari/Bookmarks.plist
- Copy it out first: in Finder choose Go > Go to Folder, enter ~/Library/Safari and copy Bookmarks.plist to the Desktop. macOS protects the Safari folder, so a browser's file picker may not be allowed to read it in place.
- On a Time Machine backup or an old Mac's disk, the same file sits under Users, your user name, then Library/Safari.
- A copy converted with plutil -convert xml1 is read the same way as the binary file.
- If Safari still runs, File > Export Browsing Data to File saves a ZIP that includes your bookmarks. Drop that ZIP here and its bookmarks file is offered as it is.
Drop a Bookmarks.plist to see its folders and bookmarks here.
The bookmarks.html appears here
How to Convert Safari's Bookmarks.plist to HTML
-
Find Bookmarks.plist
on the Mac it is ~/Library/Safari/Bookmarks.plist; in a backup it is under your user folder's Library/Safari. Copy it somewhere your browser can open, such as the Desktop. -
Drop the file on the page
The binary and XML forms are both read, and so is a ZIP that holds the file. -
Choose whether to include the Reading List and keep empty folders, and check the preview
-
Download bookmarks.html and import it in Chrome, Edge or Firefox as an HTML bookmarks file
Common Use Cases
Recovering Safari bookmarks from a Time Machine backup onto a Windows PC or another browser
Moving bookmarks off a Mac that no longer starts, using a copy of its user folder
Bringing Safari's Reading List into Chrome or Firefox as a folder of bookmarks
Checking what a Bookmarks.plist holds before restoring it, through the preview table
Why Use Safari Bookmarks to HTML?
Safari on macOS keeps bookmarks in ~/Library/Safari/Bookmarks.plist, normally a binary property list (a file that starts with bplist00). Its root is a WebBookmarkTypeList whose children are the History entry, the BookmarksBar (shown as Favorites), the BookmarksMenu and the Reading List (com.apple.ReadingList). Folders are WebBookmarkTypeList dictionaries with a Title and Children; bookmarks are WebBookmarkTypeLeaf dictionaries with a URLString and a URIDictionary title.
This page reads the binary form, or the XML form that plutil -convert xml1 writes, with the same property list reader as the Plist JSON Converter, walks that tree in order and writes a Netscape bookmarks.html. Favorites becomes a folder marked with PERSONAL_TOOLBAR_FOLDER, the Bookmarks Menu and your own folders keep their names and nesting, and Reading List items carry the date they were added. The History entry is skipped. Icons, Reading List preview text and iCloud sync data are not carried over.
A property list that is not Safari's bookmarks file, such as an app's Info.plist or a .webloc shortcut, is refused with what it looks like. A ZIP is opened in the tab: a Bookmarks.plist inside it is converted, and a bookmarks HTML file inside it is offered as it is.
How it compares
When Safari runs, its own export is the simplest route. Without it, the alternatives are plutil plus a community XSLT script on a Mac, or a generic plist to JSON converter, which leaves Safari's internal dictionaries rather than an importable file. Bookmarks JSON to HTML reads Chrome and Firefox files but not Safari's plist. This page reads the binary or XML plist directly, keeps the folder tree and the Reading List, and needs no Mac or command line.
Tips for Converting Safari Bookmarks
- Safari's Favorites bar is written as a Favorites folder marked as the bookmarks toolbar, the same marker Chrome and Firefox write on their own bar folder.
- The Reading List becomes a Reading List folder, with the date each page was added. Turn Include Reading List off to leave those pages out.
- To clean the result up, run it through Dedupe Bookmarks, or merge it with another browser's export in Merge Bookmarks.
- For the raw contents of the plist, every key and value, use the Plist JSON Converter instead.