Updated October 26, 2026
There are three practical ways to get a table from a web page into Google Sheets. Which one works depends on how the page builds its table and whether you need the data to stay up to date.
Ctrl+C, or ⌘C on a Mac).Ctrl+V / ⌘V).Works well for: small, simple tables.
Watch out for: selections that grab text above or below the table, merged cells that shift columns, and numbers with currency symbols or parentheses that paste as text. If formatting comes along that you don't want, paste with Ctrl+Shift+V (values only).
Google Sheets can pull a table straight from a public page:
=IMPORTHTML("https://example.com/page", "table", 1)
"list" instead of "table" to import a bulleted or numbered list.When it doesn't work: IMPORTHTML only sees the HTML the server sends. Tables that a page builds with JavaScript after it loads, tables behind a login, and "data grids" made of <div> elements instead of a real <table> usually come back empty or as an error. Some sites also block automated requests.
Because an extension reads the page you're already looking at in your own browser, it can export tables that IMPORTHTML can't reach, such as reports behind a login or tables rendered by JavaScript. TableToSheet lists every table and data grid on the page, and lets you copy one in a paste-ready format for Google Sheets or download it as CSV or Excel. It keeps columns aligned across merged cells and can convert values like $1,204.50 and (12,500) into plain numbers. It runs on your device; table data isn't sent anywhere.
Need the transactions from a PDF bank statement rather than a web page? See bank statement to Google Sheets.