Getting started

What CSV Studio is, and the fastest path from a file to a result.

What CSV Studio does

CSV Studio opens a CSV or TSV file, lets you inspect and fix it, and converts it to whatever format you need — JSON, Excel, SQL, and more. Everything runs locally: nothing is uploaded anywhere.

The typical path through the app follows the nav bar top to bottom: Import → Inspect → Clean → Validate → Transform → Convert → Export. You don't have to use every step — for a quick conversion, Import then jump straight to Convert or Export.

Free vs Pro at a glance

Import, inspect, clean, and the core of validate/transform/convert/export are free. Pro adds the heavier-duty column mappings, extra output formats, batch conversion, saved workflows, and custom validation rules — see Free vs Pro for the full breakdown.

Where your data lives

Files are only ever read from and written to disk on your machine (or downloaded, in a browser build). CSV Studio doesn't send your data to a server. Settings, saved workflows, and export presets are stored locally too.

Install & activate

A few clicks to install, no account, and one paste to unlock Pro.

1. Run the installer

Download from the pricing section, run CSV Studio Setup.exe, and follow the prompts. Free and Pro are the same download — a license key unlocks the rest, no reinstall.

2. Launch the app

Open CSV Studio from the Start Menu or the desktop shortcut. It runs offline once installed.

3. Import a file

Open a CSV or TSV file to begin. Everything on the Free tier works immediately with no sign-in.

Activating Pro

Your license key arrives by email right after checkout, with an Activate button that unlocks the app automatically if it's already installed. To do it by hand, paste the key into Settings → License and click Activate — the app reloads once activation succeeds. There's no separate account or activation server.

Lost the email or misplaced your key? Use Recover your license with the email you paid with and the transaction ID from your Paddle receipt.

Import

Bring a CSV, TSV, or pasted table into the app.

Ways to bring in data

  • Browse / Drop — drag a file onto the drop zone, or click to open a native file picker. Accepts .csv, .tsv, and .txt up to 2 GB.
  • Paste CSV — switch to the Paste tab and paste table text directly; useful for data copied from a spreadsheet or email.

Delimiter & headers

The delimiter (comma, tab, semicolon, or pipe) is auto-detected from the first line — a .tsv file always forces tab regardless of content. Override it manually if detection guesses wrong.

First row is headers is on by default; turn it off if your file has no header row and you want generic column names instead.

Before you import

The raw preview panel shows what will be parsed as you adjust delimiter/header settings. A background scan also flags a rough issue count (empty cells, duplicate IDs, inconsistent values) in the first 500 rows — a preview of what Validate will find later. Click Import and Preview to load the file and land on the Inspect table.

Inspect (table view)

Browse, search, sort, and hand-edit the loaded data.

Working the grid

  • Click a column header to sort ascending, click again for descending, a third click clears the sort.
  • Double-click a cell to edit its value in place.
  • Click a row number to select/highlight that row.
  • Use the search box to fuzzy-filter rows across every column.

Column inspector

Selecting a column (click its header) opens the right-hand panel with its detected type, total/unique/empty/invalid counts, example values, and one-click cleanup suggestions that jump straight to Clean pre-scoped to that column.

Pagination

Large files are paged (rows-per-page is adjustable, including "show all"). Row highlighting in the left margin flags invalid (red), warning (amber), and empty (pale amber) cells — the same colors used throughout Validate.

Clean

Fix whitespace, duplicates, headers, dates, casing, and more.

Scope: file vs. one column

Every clean operation applies either to the whole file or to just the selected column (pick a column on the Inspect screen first, then switch scope here). Each toggle shows a live count of how many cells/rows it will touch before you apply anything.

Operations

OperationWhat it does
Trim whitespaceStrips leading/trailing spaces from every cell.
Remove blank rowsDrops rows that are entirely empty.
Remove duplicate rowsCollapses exact row matches.
Normalize headersRewrites column names using the Header case setting below.
Remove invisible charactersStrips zero-width and control characters that don't show up visually but break matching.
Normalize quotesStraightens curly "smart" quotes into plain straight quotes.
Empty strings → nullTreats "" as a true missing value rather than an empty string.
Standardize datesReformats every value in Date-typed columns to your Settings date format.
Fix inconsistent casingTitle-cases values in Enum-typed columns (e.g. status fields).
Re-quote fieldsQuotes fields that contain commas so they survive re-export as CSV.

Header case

Only used when Normalize headers is on. Choices: camelCase, snake_case (default), kebab-case, PascalCase. Non-word characters are converted to underscores and collisions are de-duplicated automatically.

Applying

Apply Cleaning runs the checked operations in a fixed, safe order (per-cell fixes first, then row removal, then header renaming), then shows a summary with counts and an Undo cleaning button. You can always undo/redo from the toolbar afterward too.

Validate

Find missing values, duplicates, bad emails, dates, and enum outliers.

Built-in rules

RuleFlags
Required fieldsEmpty cells in columns where almost every row is filled in (inferred as "required").
Unique columnsDuplicate values in an id column or any column ending in _id.
Email validationWhitespace around an email (auto-fixable) and invalid email formats.
Date formatDates not in ISO YYYY-MM-DD form — flagged as ambiguous or non-ISO, with a suggested ISO fix when derivable.
Allowed valuesValues in an Enum-typed column that appear in less than 1% of rows — likely typos of the common value.

Every rule can be switched off individually in the sidebar.

Fixing issues

  • Open jumps you to the exact cell in the table.
  • Fix applies the suggested correction to that one row (only shown when a fix exists).
  • Fix all applies the same fix to every row with the identical current-value → fix-value pair.
  • Ignore / Ignore all hide an issue (or every issue of that type in that column) without changing the data.
  • Filter tabs (All / Errors / Warnings / Missing / Duplicates / Emails) and a page size selector help you work through large issue lists.

Custom rules PRO

Custom regex rules and the error report export are Pro features.

Define a column (or leave blank for all columns), a regex pattern, an error/warning message, and severity. A row fails the rule when its value does not match the pattern. Rules can also be loaded automatically from a JSON file — set the path in Settings → Custom rules path.

Exporting results

Pro users can export a validation_errors.csv report (row, column, severity, issue, current value, suggested fix) via Export Error Report.

Transform

Rename, reshape, merge, and compute columns.

Free transforms

  • Rename — change a column's name.
  • Remove — delete a column.
  • Reorder — set an explicit column order (anything left out is appended at the end).

Pro transforms PRO

TypeWhat it does
MergeJoins two or more columns into one, with a separator you choose.
SplitSplits one column into name_1, name_2, … by a separator.
ComputedAdds a new column from a JS expression that can reference other column values by name.
ExtractPulls a regex match (or capture group) out of a column into a new column.
NestTurns a column key into a dot-path (e.g. address.city) so it nests when converted to JSON.
GroupCollapses rows into one per distinct value of a chosen column, adding a _count column.

Building a mapping list

Add one or more mapping steps, reorder them by drag, preview the resulting first row as JSON, then Apply to commit — this pushes an undo checkpoint first, so you can always step back.

Convert

Preview your data reshaped into another format before exporting.

Formats

Free: JSON, CSV. Pro adds: JSON Lines (NDJSON), Excel (.xlsx), SQL INSERT statements, Markdown tables, YAML, and XML.

JSON structures

StructureResult
Array of objects[ {…}, {…} ] — the default, available on Free.
Keyed by column PROAn object keyed by a chosen column's value instead of an array.
Nested (dot notation) PROColumn names containing "." become nested objects.
Grouped PROAn object keyed by a column's value, each holding an array of matching rows.

Output options

  • Pretty formatted — indented, human-readable.
  • Minified — smallest possible size, one line.
  • Auto-detect types — numbers and booleans are kept as real types rather than quoted strings.
  • Keep all as strings — forces every value to a quoted string.
  • Omit empty fields — drops null/blank/empty-array keys entirely.

Use Copy to grab the preview text directly, or continue to Export to save it as a file.

Export

Write the converted data to disk (or download it).

Basics

Set a file name and format (same list as Convert), then either pick a save location via the native dialog (desktop app) or let it download to your browser's download folder.

Options

  • Export all rows — free, always available.
  • Export filtered rows only PRO — exports just what's currently filtered in the table.
  • Split into chunks PRO — one file per 1,000 rows, zipped together.
  • Compress as ZIP PRO — wraps a single output file in a .zip.

Presets

Save your current format + options as a named preset to reapply later — handy if you export the same shape of file repeatedly.

Before you export

A banner warns you if validation errors remain, with a shortcut back to Validate. It's not required to fix everything before exporting — just a heads-up.

Batch convert

PRO

Convert many files at once with one shared set of settings.

How it works

Add multiple CSV/TSV files (drag-drop or picker), choose an output format and a naming pattern ({name} becomes each file's base name), and optionally run one of your saved workflows against every file before conversion.

Options

  • Save beside source — write each output next to its original file (desktop app only).
  • Bundle as one ZIP — package every output into a single batch_output.zip (on by default).
  • Skip files that fail validation — files with detected issues are marked failed and not written, instead of exporting something dirty.
  • Write a batch report — adds a batch_report.csv summarizing rows, columns, status, and issues per file.

Each file gets a live status — Queued, Converting, Converted, or Failed — and you can filter the list by status while a run is in progress.

Workflows

PRO

Save a repeatable pipeline of steps and run it on demand or in Batch.

What a workflow is

A named, ordered list of steps — any mix of Clean → Validate → Transform → Convert → Export — each configured exactly like its standalone screen. Running a workflow feeds each step's output into the next.

Building one

Open Workflows, create or select a workflow, then + Add step to append a step and configure it inline. Reorder or remove steps as needed, then Run to execute the whole pipeline against the currently loaded file — a progress view shows which step is active.

Managing workflows

Workflows are saved locally and persist between sessions. Duplicate clones one for tweaking; deleting the last remaining workflow resets you back to the built-in starter templates.

Built-in starter templates

TemplateSteps
Product Catalog CleanupClean (full pass) → Validate (all rules) → Export as Excel
CSV to JSON API ExportValidate → Transform (rename + merge name fields) → Convert to JSON → Export
Contact List CleanerClean (contact-focused) → Validate → Export as JSON

Using workflows in Batch

Any saved workflow can be selected in Batch convert to apply its clean/validate/transform steps to every file in the batch — the batch screen handles import and export itself, so a workflow's own import/export steps are ignored there.

Settings

App-wide preferences — theme, defaults, validation, and export behavior.

License

Paste the license key from your purchase email and click Activate to unlock Pro. The app reloads once activation succeeds.

Appearance

Dark, Light, or System (follows your OS theme).

General

  • Default delimiter — used for new imports until overridden.
  • Date format — ISO 8601 (YYYY-MM-DD), DD/MM/YYYY, or YYYY/MM/DD; used by Clean's date standardization.
  • Max preview rows — how many rows load per page in the table view.
  • Large file threshold (MB) — the size at which the app treats a file as "large" for performance purposes.

Validation

  • Strict mode — treat warnings as errors where possible.
  • Auto-validate on import — run Validate automatically right after a file loads.
  • Custom rules path PRO — a JSON file of custom regex rules, auto-loaded into every Validate run.

Export

  • Default output folder — where Export suggests saving to.
  • Include BOM — prepend a byte-order mark to exported CSV files, useful for opening non-ASCII CSVs correctly in some spreadsheet apps.

Free vs Pro

Exactly what unlocking Pro adds.

Entirely Pro-gated screens

  • Batch convert
  • Workflows

Pro upgrades inside free screens

AreaFreePro adds
Convert / Export formatsJSON, CSVNDJSON, Excel, SQL, Markdown, YAML, XML
JSON structureArray of objectsKeyed, Nested, Grouped
TransformRename, Remove, ReorderMerge, Split, Computed, Extract, Nest, Group
Export optionsExport all rowsFiltered-only, Split into chunks, ZIP
ValidateAll 5 built-in rulesCustom regex rules, Export Error Report
Settings—Custom rules path

Everything not listed above — Import, Inspect, Clean, and the core of Validate/Transform/Convert/Export — is free with no limits. See the pricing section for how to unlock Pro.

MCP server

Drive CSV Studio's engine from Claude Code or any MCP-compatible AI agent.

What it is

CSV Studio ships an MCP (Model Context Protocol) server that exposes the same clean/validate/transform/convert engine as the desktop app, as tools an AI agent can call directly — no GUI required. Useful for scripting bulk cleanups or wiring CSV work into an agent-driven workflow.

Setting it up with Claude Code

claude mcp add csv-studio -- node /path/to/csv-studio/mcp/server.js

To use Pro-only tools without the desktop app installed, pass your license key as an environment variable:

claude mcp add csv-studio -e CSV_STUDIO_LICENSE=CSVP1.... -- node /path/to/csv-studio/mcp/server.js

Without that variable, the server checks the same license the desktop app uses if it's installed on the same machine.

Tools it exposes

ToolWhat it does
csv_inspectParses a CSV/TSV and returns inferred column types, row count, and a preview.
csv_convertConverts to json/csv (free) or ndjson/sql/markdown/yaml/xml (Pro), with array/keyed/nested/grouped structures.
csv_cleanRuns the same cleaning operations as the Clean screen.
csv_validateRuns the built-in rules (plus custom rules on Pro) and returns an issue list.
csv_transformApplies an ordered list of column mappings, free and Pro types alike.
csv_batch PROConverts several files by path to one output format in a single call.
csv_workflow_listLists the desktop app's saved workflows.
csv_workflow_run PRORuns a saved workflow, or an ad-hoc list of steps, end to end.
csv_diffCompares two CSV/TSV files, matching rows by a key column (or reporting whole rows added/removed).
csv_license_statusReports whether a Pro license is active for the server.

Resources

  • csvstudio://recent-files — the desktop app's recent-files list.
  • csvstudio://workflows — the desktop app's saved workflows.

Support & troubleshooting

What to include when something's wrong, and where billing questions go.

Reporting an issue

Reply to your Paddle order confirmation email. Include your operating system, the CSV Studio version shown in Settings, and a short description of what you did and what happened — that's usually enough to reproduce it on our end.

Billing & purchases

Refunds, receipts, failed charges, and VAT questions are handled by Paddle, the merchant of record for every CSV Studio Pro purchase — reply to your Paddle order confirmation email. You can also check an order from the order status page.

Lost your license key

Go to Recover your license and enter the email you paid with plus the transaction ID from your Paddle receipt — we'll re-send the license email straight away.

Common questions

  • Pro didn't unlock after activating — confirm the key was pasted with no leading/trailing spaces, then restart the app. The key format starts with CSVP1.
  • A large file is slow — raise the Large file threshold in Settings and lower Max preview rows; CSV Studio streams big files rather than loading them whole.
  • Exported CSV opens with garbled accents in Excel — turn on Include BOM in Settings → Export.

Still have a question?

Reply to your Paddle order confirmation email and we'll get back to you, or head back to the support hub.

Docs & Support