The first thing most people try is Settings → Your account → Download an archive of your data. It is a sensible guess, and it does not work: the archive contains your posts, likes, DMs and ad data, but not your bookmarks. Bookmarks live in a separate system and X has never added them to the export.
So here are the methods that do work, in order from "no setup" to "write some code".
Method 1: Copy from the page (free, manual)
Open x.com/i/bookmarks in a desktop browser, scroll to the bottom to load everything, then select-all and paste into a document. You get the text of each post plus the author handle, but not the links to the original posts.
A slightly better version: use the browser's "Save page as" to keep the HTML, which preserves links. Either way, this is the method for a one-off backup of a small list.
Good for: under 100 bookmarks, one-time export. Bad for: anything you will need to do again.
Method 2: A browser extension (free or cheap, semi-automatic)
Extensions sit in the page while you browse x.com and capture posts as you scroll or click. Readstash's Chrome extension, for example, saves a post with one click and stores the full text, author, media links and the thread it belongs to; the free plan allows 200 saves a month and anything saved can be exported as CSV or JSON from your account.
Other extensions take the "scrape the bookmarks page" approach: open your bookmarks, click a button, and the extension scrolls through and collects everything it can see.
Good for: ongoing capture without touching the API. Bad for: very large backlogs. Scraping relies on X rendering every post in the page, which gets flaky past a few hundred.
Method 3: A sync tool (paid, automatic)
Tools like Readstash (Pro), Dewey and Tweetsmash connect to your account through X's official OAuth and read your bookmark list through the API. Nothing to scroll, nothing to click; new bookmarks appear in the tool on a schedule.
Once your bookmarks are in the tool, exporting is a button: CSV for spreadsheets, JSON for developers, and often Notion, Markdown or Obsidian formats.
This method costs money because X charges developers per bookmark read. That is the honest reason "unlimited free sync" does not exist anywhere.
Good for: people who bookmark every day and want a living archive, not a snapshot. Bad for: a one-time export; you would be paying for a month to press one button (though Readstash's free plan plus the extension covers that case).
Method 4: The X API (free tier removed, some code)
If you are comfortable with a terminal, the API gives you the cleanest data. The steps: