Export full page text and metadata from selected Chrome tabs to JSON.
Users
17
+8 in 30 days
Rating
0.0 / 5
unchanged in 30 days
Ratings
0
0 in 30 days
Store rank
#161K
#135K among extensions
Version
2026.10.1
updated 4 Oct 2026
Users
monthly, 3 months
Latest, 16 Oct 2026:17 usersMove the mouse over the chart for any month
Ratings count
monthly, 3 months
Latest, 16 Oct 2026:0 ratingsMove the mouse over the chart for any month
The Chrome Web Store rounds user counts down to the leading digit, so the user line moves in steps. The ratings count is exact and is the better signal of real adoption.
About Tabs2JSON
Turn your open tabs into clean JSON.
Tabs2JSON reads the text and metadata of the tabs you select and exports it as structured JSON, built for feeding page content to a large language model. It works across page types by relying on how HTML organizes content rather than assuming any particular site structure.
WHY YOU MIGHT WANT IT
Picture the tabs you have open right now. A dozen listings while you shop for a laptop. Six flights across three airline sites. A pile of research papers, recipes, or apartment listings you swore you would compare later. A stack of job descriptions.
Feeding all of that to an LLM one tab at a time is slow, and pasted browser text arrives cluttered with navigation and footer boilerplate. Tabs2JSON grabs the readable content from every tab you pick in one click, strips most of the chrome, keeps any Schema.org structured data the page already ships, and gives you a single JSON document to download or copy straight to your clipboard, ready for an LLM to read end to end. Ask it to compare the laptops, rank the flights by price and layover, or pull the requirements out of every job posting at once.
WHAT IT CAPTURES
For each tab you select:
- The visible page text, cleaned of navigation and repeated boilerplate
- Title, URL, canonical URL, language, author, description, and publication date when the page provides them
- The heading outline
- Any JSON-LD structured data the page embeds
- A word count, plus flags for video-only or low-signal pages
Single-page sites often reuse one browser title across every page they show, so a folder of exports would read the same on every file. Where the page's own heading names it better, Tabs2JSON uses that instead and keeps the browser title alongside.
When a page is only a shell around an embedded frame, such as a job board or a document viewer, Tabs2JSON reads the frame instead. It skips junk frames like captcha, ad, analytics, and consent widgets, so you get the page you wanted rather than the noise around it.
HOW IT WORKS
Open the popup, tick the tabs you want, and choose Download JSON or Copy to Clipboard. You can see the export progress as each tab is read.
With more than one window open, tabs are grouped under a heading per window, and any browser tab groups appear nested inside their window with their own name and color. One click on a window or group heading selects everything readable in it. The window you are in opens expanded with its tabs already selected; the others start collapsed, so an export never quietly picks up a tab you cannot see. Each row also has a close button, so you can clear a tab out of the way without leaving the popup.
Browser internal pages and any domains you block are shown disabled and cannot be read.
Downloads save to your downloads folder under a timestamped name based on your local clock. To be asked for a name and folder each time, turn on "ask where to save each file before downloading" in your browser's download settings.
SETTINGS
Choose what to include: page text, structured data, and the heading outline. Cap the text length per tab, trim video-only pages, strip query parameters from URLs, block domains you never want read, and pretty-print or compact the JSON.
Two settings control the tab list: whether a new popup starts with this window selected, every window, or nothing, and whether unreadable tabs are hidden rather than greyed out.
One setting controls how much of each page is read. Normally Tabs2JSON picks out the main content and leaves the rest. Turn on "capture the whole page" and it takes all the text from every part of the page instead, which is the thing to try when a page comes back empty or missing most of its text.
PRIVACY
All work happens on your device, inside your browser. Tabs2JSON sends nothing to any server and includes no analytics, tracking, or advertising. Your settings are stored locally and never leave your machine. It reads a page only when you select that tab and trigger an export.
The one piece of network activity it causes is your browser fetching each tab's favicon for the list, exactly as your tab strip already does. Nothing it reads from your pages is ever transmitted.
The exported file holds the full text of the tabs you picked, so treat it as being as sensitive as those pages.
PERMISSIONS
- tabs: list your open tabs so you can choose which to export
- tabGroups: read your tab group names and colors so the list matches your tab strip
- scripting: read the page content of the tabs you select
- downloads: save the JSON file to your downloads folder
- offscreen: hold the generated file in memory while it downloads, so closing the popup does not cancel the save
- storage: remember your settings locally
- host access: required so scripting can read the pages you choose
Open source under CC BY-NC-SA 4.0.
Source and issues: https://github.com/hihipy/tabs-2-json
Growth
Window
Users
Change
Ratings
Rating
7 days
+1
+6.2%
0
0.00
30 days
+8
+88.9%
0
0.00
Chrome Web Store search rankings
Where Tabs2JSON appears when people search the store, with the 30 day change