Free · No signup · Runs in your browser

Convert CSV to INI config.

Drop a CSV, get clean INI. One [section] per row, one key=value per column, with = ; # and [ ] safely escaped. If your first column is an id, it names the sections automatically.

To convert CSV to INI, drop or paste a CSV file — csvtodashboard parses it into rows and columns in your browser, then emits an INI file of sections. Each row becomes a [section] of key=value lines; INI has no type system, so every value is written as text. Nothing is uploaded; the whole conversion runs on your device.

01 · How it works

Three steps, then done.

INI is the plain-text config format used by countless apps, services, and tools. This converter maps every CSV row to a [section] and every column to a key=value pair. When your first column looks like an id and its values are unique, those values become the section names; otherwise sections fall back to [row1], [row2], and so on. Special characters are escaped so the file always parses.

i. drop

Drop or paste

Drag a file, click to choose, or paste CSV straight into the input pane.

ii. detect

We read the shape

Columns and types are inferred, and we check whether the first column can name your sections.

iii. use it

Copy, download, or dashboard

Copy the INI, download a .ini file, or hit 'Build dashboard' to see what's in the data.

02 · Why ours

Config-safe output by default.

Naive CSV-to-INI dumps break the moment a value contains an equals sign, a bracket, or a line break. Ours escapes the characters INI treats as special, keeps every key=value on one line, and names sections sensibly so the result is a file your parser will actually accept.

  • 01

    Properly escaped

    Reserved characters (= ; # [ ]) in keys and section names are neutralized, and embedded newlines collapse to \n so each entry stays on one line.

  • 02

    Smart sections

    An id-like first column with unique values names your sections; otherwise we use [row1], [row2] so nothing collides.

  • 03

    Local-first

    Your file is parsed and converted in your browser - verify in DevTools, Network tab. Nothing is uploaded.

  • 04

    One click to dashboard

    Hit 'Build dashboard' and the same data opens in our visualization tool.

"Needed a config file. Pasted a spreadsheet. Got valid INI back in a second."
- someone wiring up a tool
Good to know

csv to ini notes.

Format-specific details worth knowing before you convert CSV to INI.

  • One section per row

    Each row becomes a [section] with key=value lines; choose which column names the section so entries stay addressable.

  • Everything is a string

    INI has no type system and no single formal spec — numbers and booleans are written as text and parsed however your reader decides.

  • Flat, no nesting

    INI is flat key=value within sections; there are no arrays or nested tables, so complex values are flattened to strings.

03 · FAQ

to ini questions.

How are sections named?
If your first column looks like an id (named id, key, name, section, slug, or ending in 'id') and every row has a unique, non-empty value, that value becomes the [section] name. Otherwise sections fall back to [row1], [row2], [row3], and so on.
Characters INI treats as special are escaped: =, ;, #, [ and ] in keys (and [ ] in section names) become underscores, and any embedded line breaks in a value collapse to a literal \n so each key=value stays on one line.
An empty or missing cell produces an empty value - the key is still written as key= with nothing after the equals sign, so the schema stays consistent across sections.
Yes. The header comment uses ; by default; set the comment character to # if your tool prefers hash-style comments, or turn the header off entirely.
No. The conversion runs entirely in your browser with JavaScript - your CSV never leaves your machine. You can confirm it in DevTools under the Network tab.