Turn any pasted table into JSON or SQL instantly
Re-typing table data into code is slow and error-prone. Paste CSV, TSV, pipe, or Markdown tables and get JSON, JSONL, or ready-to-run SQL INSERTs instantly in your browser.
Paste a table or drop a CSV — get JSON, JSONL or SQL out the other side
or drop a .csv / .tsv file
What you can do with Table to JSON
Everything this tool helps you accomplish — no learning curve, no setup.
- Convert CSV or TSV tables into JSON
- Turn spreadsheet data into SQL INSERT statements
- Export rows as JSONL for data pipelines
- Paste Markdown or pipe tables and convert them
- Use the first row as field names
- Handle comma, semicolon or pipe delimiters
Settings information
4 settings
Every control in Table to JSON, explained — what it does and when to use it.
Settings
- DelimiterDropdown
- Chooses how columns are split in your pasted table — comma, tab, semicolon, pipe, or Markdown pipes — or leave on Auto-detect to let the tool pick the separator from the first line.Options: Auto-detectCSV (Comma)TSV (Tab)SemicolonPipeMarkdown table
- OutputDropdown
- Picks the converted format: JSON objects keyed by column names, positional JSON arrays, one-record-per-line JSONL, or ready-to-run SQL INSERT statements.Options: JSON (objects)JSON (arrays)JSONLSQL INSERT
- First row is headerOn / Off
- When checked, the first row supplies the column names used as JSON keys or SQL columns; when unchecked, SQL columns are auto-named col_1, col_2 and JSON output falls back to positional value arrays.
- TableText input
- Sets the table name used in generated SQL INSERT statements (defaults to my_table); shown only when Output is SQL INSERT, and unsafe characters are automatically replaced with underscores.
Done with Table to JSON? Try these next
Hand-picked tools that pair well with Table to JSON. Keep going without losing your file.
JSON Prettify
One-line API responses are impossible to scan. Paste or drop JSON to validate it, pretty-print at 2, 4, or 8 spaces, or minify it for production — instantly in your browser.
Try it nowImage to CSV
That table is trapped in a screenshot. Upload it and download a clean, ready-to-import CSV with every row and column intact — in seconds.
Try it nowImage to Excel
Stop rebuilding tables cell by cell. Upload a photo or screenshot of any table and download a styled .xlsx with rows and columns intact — in seconds.
Try it nowPDF to CSV
Skip manual re-entry. Every table in your PDF becomes a clean CSV — one file per table, zipped and ready to import into Excel, Sheets or your database. Free to start, no credit card.
Try it nowDiff Checker
Eyeballing two versions misses changes. Paste both texts and see every addition and deletion highlighted in split or unified view — then copy the result. Free to use, with no account needed.
Try it nowMarkdown Editor
Stop guessing how your README will render. Write or open any .md file, watch the live HTML preview update instantly, then export as HTML or Markdown. Editing stays in your browser.
Try it nowFrequently Asked Questions
Paste a CSV (or drop a .csv file) into the input panel and the tool detects the delimiter automatically, parses each row into a JSON object using the header line as keys, and shows the output instantly. Switch the output format to JSON array, JSONL, or SQL INSERT to get exactly the shape you need.
usageYes. The parser follows RFC 4180 — fields wrapped in double quotes can contain commas, newlines and even literal quotes (escaped as "") without breaking parsing. So a value like "Smith, John" remains a single cell, not two.
technicalThe tool counts tabs, commas, semicolons and pipes on the first non-empty line and picks the most-frequent one. If you have an unusual or ambiguous file, you can override auto-detect and select tab (TSV), comma, semicolon, pipe or Markdown table manually.
technicalSwitch the output format to SQL INSERT and enter a table name. The tool sanitises column names to valid identifiers (replacing spaces, dashes, etc. with underscores) and produces one INSERT per row with properly-escaped string literals, numeric values, and NULL for empty cells. Perfect for seeding databases or migrating data.
featuresJSONL (JSON Lines) puts one JSON object per line, with no surrounding array. It is the standard format for streaming data into BigQuery, Snowflake, Logstash, Elasticsearch and most machine-learning pipelines. Pick JSONL when each row will be ingested independently.
featuresYes. Values matching integer or decimal patterns are emitted as JSON numbers, the literals "true"/"false" become booleans, and empty cells become null. If you need everything as strings, prepare the values accordingly before converting.
technicalYes. Select "Markdown table" as the delimiter and paste a standard pipe-delimited Markdown table (header row, separator row, body rows). The separator line is automatically skipped and cell whitespace is trimmed.
usageNo — parsing and conversion run entirely in your browser. This makes the tool safe for sensitive spreadsheets like payroll exports, customer lists or financial records that should never touch a third-party server.
privacyWhen checked, the tool treats your table's first row as column names and uses them as the JSON object keys (or generates col_1, col_2... for SQL if you leave it blank). Uncheck it if your data has no header row — a plain list of rows — and the tool will instead output raw JSON arrays or auto-name columns col_1, col_2, etc. for SQL INSERT statements.
featuresSwitch Output to SQL INSERT and a Table name field appears where you can type your target table's name, such as customers or order_items. The tool automatically sanitizes whatever you enter — replacing spaces and symbols with underscores and prefixing a leading digit — so the generated SQL always has a valid identifier even if your input is messy.
usageUncheck 'First row is header' if your export has no column names, set Output to SQL INSERT, and type your real table name in the Table name field. The tool will auto-generate col_1, col_2... column names, coerce numbers and booleans automatically, and produce one properly-escaped INSERT statement per row that you can paste straight into your database client.
tipsJSON (arrays) drops the field names and outputs each row as a plain list of values in column order — for example ["Alice", 34, "Berlin"] instead of {"name":"Alice","age":34,"city":"Berlin"}. It still respects the 'First row is header' checkbox, using that row only to know how many columns to expect rather than as keys. Choose it when the receiving code (a charting library, a positional database driver, or a spreadsheet import) reads values by position rather than by field name; otherwise stick with JSON (objects).
featuresTry sample fills the input panel with a short three-row name/age/city table (tab-separated) so you can immediately see how the delimiter detection, header row and each output format behave before you paste real data. Once there's content in the box, a Clear button appears — next to the Input label in the editor view, and again as a full-width button in the Settings panel — that wipes the textarea back to empty in one click instead of selecting and deleting the text manually.
usageHow Table to JSON helps you get it done
Real problems it solves every day — for businesses, creators, and everyday tasks. Find the use case that fits you and start in seconds.
CSV to API Migration
You have a legacy CSV export from a partner and need to POST it into a modern REST API expecting JSON. Convert in seconds, copy to your fetch body, and verify the shape — no glue script needed.
Database Seeding
Generate ready-to-run SQL INSERT statements from a CSV of test data. Drop straight into your migration file or psql shell. The output handles strings, numbers, nulls and booleans correctly.
BigQuery / Snowflake Ingestion
Cloud warehouses ingest JSONL faster than CSV. Convert your spreadsheet to JSONL and upload directly to BigQuery, Snowflake or Redshift staging.
Markdown Documentation Tables
Convert a paste from your Markdown docs into JSON for programmatic processing — generate FAQ items, navigation entries, or pricing tier data from human-readable Markdown tables.
Form Submission Analysis
Export your Google Forms or Typeform responses as CSV, convert to JSON, and run analytics or feed into your CRM via API. The header row becomes your field names.
Static Site Data Generation
Feed table data into Next.js getStaticProps, Astro content collections or Hugo data files. JSONL is especially useful for content collections that map one row to one page.
QA Test Fixture Generation
Paste a spreadsheet of test scenarios and export JSON fixtures or JSONL straight into a Jest, Pytest or Playwright test suite, skipping the hand-written mock-data file entirely.
Supplier Catalog Bulk Import
Convert a supplier's price-list CSV into SQL INSERT statements for your products table, or JSON for a Shopify/WooCommerce bulk-import app, using the Table name field to target the exact table your store expects.
No-Code Zapier & Airtable Sync
Turn an exported spreadsheet into the JSON array or object shape a Zapier webhook, Airtable automation or Make.com scenario expects, without writing a transformation script.
Bank Statement Reconciliation
Convert an exported bank or card-statement CSV into JSON for a personal-finance dashboard, or into SQL INSERT statements to load transactions straight into a ledger database.
Static Site Data File Generation
Convert a spreadsheet of team bios, pricing tiers or product listings into a JSON data file that Hugo, Jekyll, Astro or Eleventy templates loop over directly, skipping the hand-written data/*.json file a JAMstack build usually requires.
