Table to JSON / SQL Converter - CSV, TSV, Markdown Online

Paste a CSV, TSV, semicolon, pipe or Markdown table and convert it to JSON, JSONL or SQL INSERT statements instantly in your browser.

Paste CSV, TSV, semicolon, pipe or | markdown | table | here…

or drop a .csv / .tsv file

Files are auto-deleted after processingProcessed securely over HTTPS

Frequently 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.

usage

Yes. 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.

technical

The 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.

technical

Switch 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.

features

JSONL (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.

features

Yes. 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.

technical

Yes. 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.

usage

No — 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.

privacy

When 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.

features

Switch 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.

usage

Uncheck '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.

tips

JSON (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).

features

Try 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.

usage

How 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.

For Developers

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.

For Developers

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.

For Developers

BigQuery / Snowflake Ingestion

Cloud warehouses ingest JSONL faster than CSV. Convert your spreadsheet to JSONL and upload directly to BigQuery, Snowflake or Redshift staging.

Publishing

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.

Productivity

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.

For Developers

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.

For Developers

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.

For E-commerce

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.

Productivity

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.

Finance

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.

Publishing

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.