CSV To INI

Login

Email
Password

Don't have an account yet?

Go to Sign up

{{ workbook ? 'Online Table Editor' : 'Input Data' }}
Change File Enter Data
Row Col Row Col
Transpose Clear Delete Empty Deduplicate
ABC abc Abc
Replace
First Row as Header
{{ displayRows.length }} rows x {{ displayHeaders.length }} columns{{ firstRowAsHeader ? ' (1 header)' : '' }} {{ selectedRows.length > 0 ? selectedRows.length + ' selected' : '' }}
Output Data
{{ copied ? 'Copied!' : 'Copy to Clipboard' }} Download File
Properties
Convert CSV to INI online — paste, edit, and download INI.

Section Column:
Column used as section headers in INI
Key-Value Separator:
Separator between key and value
Comment Style:
Comment character for INI file
Skip Empty Rows:
Skip rows where all cells are empty
Skip Empty Sections:
Skip sections with no key-value pairs
Empty Value Handling:
How to handle empty cell values
UTF-8 BOM:
Add UTF-8 byte order mark
Convert Restart
Insert Row Below
Insert Row Above
Insert Column Right
Insert Column Left
Delete Row {{ contextMenu.row + 1 }}
Delete Column {{ contextMenu.col + 1 }}
Clear Cell
Clear Row
Case sensitive Use regex Cancel Replace All

What Is the CSV to INI Converter?

INI is a plain-text configuration file format originally introduced with Windows 3.x and now used across operating systems, programming languages, and applications. An INI file organizes settings into sections ([section]) containing key-value pairs (key = value), with optional comments (; or #).

The CSV to INI Converter on A.Tools transforms any CSV or TSV spreadsheet into a properly structured INI configuration file. Choose which column defines sections, pick your separator and comment style, and handle empty values — all in the browser, with zero data leaving your device.


Core Features

Section Column Mapping

The Section Column dropdown lets you choose which CSV column becomes the [section] header. Rows sharing the same value in that column are automatically grouped under one section. All remaining columns become key-value pairs within that section.

Example CSV:

section,key,value

database,host,localhost

database,port,3306

server,name,production

server,ip,192.168.1.1

Output (Section Column = column 1 "section"):

[database]

host = localhost

port = 3306


[server]

name = production

ip = 192.168.1.1

Key-Value Separator

Four separator options:

SeparatorExampleCommon Usage
=key=valueWindows INI files (compact)
=key = valueWindows INI files (readable)
:key:valueUnix-style configs, Xorg
:key : valueUnix-style configs (readable)

Comment Style

Choose between two standard INI comment characters:

  • ; — Semicolon (Windows convention, most common)

  • # — Hash (Unix convention, used in many cross-platform apps)

Empty Value Handling

OptionBehavior
keepOutput key = (empty value preserved)
removeSkip the key entirely when the value is empty

Skip Empty Rows

When enabled, rows where all cells (except the section column) are empty are excluded from the output. Prevents blank key-value pairs in your INI file.

Skip Empty Sections

When enabled, sections that contain no key-value pairs after processing are omitted from the output. Keeps the INI file clean.

UTF-8 BOM

Toggle UTF-8 BOM to add a Byte Order Mark (EF BB BF) at the start of the file. This ensures Windows applications (Notepad, legacy parsers) correctly detect UTF-8 encoding when your INI file contains non-ASCII characters.

Online Table Editor

Edit your data in-browser before converting:

  • Undo / Redo — Full edit history.

  • Add / Delete Rows & Columns — Expand or trim the table.

  • Transpose — Swap rows and columns.

  • Delete Empty — Remove empty rows and columns.

  • Deduplicate — Remove duplicate rows.

  • ABC / abc / Abc — Batch case conversion.

  • Find & Replace — With regex support.

  • First Row as Header — Toggle header treatment.

Privacy & Security

All processing runs client-side via the browser File API. Files are never uploaded, transmitted, or stored. Since INI files often contain database credentials, API keys, and other sensitive configuration data, this tool ensures your data stays on your machine.


How to Use the CSV to INI Converter

Step 1 — Load Your Data

Upload a .csv or .tsv file by dragging it onto the upload area, or click to browse. Alternatively, click Enter Data to type or paste data directly.

Step 2 — Edit Your Data (Optional)

Use the toolbar to refine your data:

  • Add, insert, or delete rows and columns.

  • Transpose the table.

  • Remove empty rows/columns or duplicate rows.

  • Change text case.

  • Find and replace values (supports regex).

  • Toggle First Row as Header to define column names.

Step 3 — Configure INI Properties

In the Properties panel:

OptionWhat to Set
Section ColumnThe column whose values become [section] headers
Key-Value Separator= or : (with or without spaces)
Comment Style; or #
Skip Empty RowsOn to exclude rows with no data
Skip Empty SectionsOn to exclude empty sections
Empty Value Handlingkeep to preserve empty values, remove to skip them
UTF-8 BOMOn if the target app requires BOM for non-ASCII

Step 4 — Convert

Click Convert. The INI output appears in the Output Data panel.

Step 5 — Copy or Download

Click Copy to Clipboard to paste into your editor, or Download File (Premium) to save as .ini.


Practical Examples

Example 1: Application Configuration

Input CSV:

section,key,value

app,name,MyApp

app,version,2.1.0

app,debug,false

database,host,db.example.com

database,port,5432

database,name,production_db

logging,level,INFO

logging,path,/var/log/myapp.log

Settings: Section Column = "section", Separator = =, Comment = ;

Output:

[app]

name = MyApp

version = 2.1.0

debug = false


[database]

host = db.example.com

port = 5432

name = production_db


[logging]

level = INFO

path = /var/log/myapp.log

Example 2: Game Settings

Input CSV:

section,key,value

graphics,resolution,1920x1080

graphics,quality,high

graphics,vsync,true

audio,master,80

audio,music,60

audio,sfx,100

controls,sensitivity,2.5

controls,invert_y,false

Settings: Section Column = "section", Separator = =

Output:

[graphics]

resolution=1920x1080

quality=high

vsync=true


[audio]

master=80

music=60

sfx=100


[controls]

sensitivity=2.5

invert_y=false

Example 3: Environment Variables with Empty Values Removed

Input CSV:

section,key,value

production,API_KEY,sk-abc123

production,API_SECRET,

production,BASE_URL,https://api.example.com

staging,API_KEY,sk-test-xyz

staging,API_SECRET,

staging,BASE_URL,https://staging.example.com

Settings: Section Column = "section", Separator = =, Empty Value = remove

Output:

[production]

API_KEY = sk-abc123

BASE_URL = https://api.example.com


[staging]

API_KEY = sk-test-xyz

BASE_URL = https://staging.example.com


The empty API_SECRET rows are omitted from the output.


Understanding the INI File Format

Structure

An INI file has three element types:

  1. Sections[section_name] on its own line. Groups related settings.

  2. Keys and Valueskey = value or key: value within a section.

  3. Comments — Lines starting with ; or #. Ignored by parsers.

INI vs. Other Config Formats

AspectINIJSONYAMLTOML
ReadabilityVery highMediumHighHigh
Sections[section]Nested objectsIndentation[section]
Data typesStrings onlyAll typesAll typesAll types
Comments; or #No##
NestingNot supportedUnlimitedUnlimitedSupported
Use caseSimple configsAPIs, data exchangeComplex configsModern configs (Rust)

INI remains the preferred format for flat, section-based configuration where simplicity and human-readability are priorities.

When to Use CSV → INI Conversion

  • Application deployment — Convert spreadsheet-managed settings into .ini files for deployment.

  • Game modding — Transform tabular game data into INI config files.

  • Legacy system migration — Move settings from spreadsheets into INI-based systems.

  • Batch configuration — Generate multiple INI files from a central CSV data source.

  • Testing — Create test configuration files from structured test data.


Frequently Asked Questions

  • Is my CSV data uploaded to a server?

    No. All file processing happens entirely in your browser using JavaScript. Your CSV data is never uploaded, transferred, or stored on any server. This is especially important for INI files that may contain passwords or API keys.

  • What is the INI file format?

    INI is a plain-text configuration format with sections ([section]) and key-value pairs (key = value). It was originally used by Windows 3.x and is now supported by parsers in Python (configparser), PHP (parse_ini_file), Java, Node.js, and many other languages.

  • How does the Section Column work?

    Select a column from the dropdown. Each unique value in that column becomes an [section] header. Rows with the same section value are grouped together, and the remaining columns become key-value pairs within that section.

  • What is the difference between = and : separators?

    The = separator is the standard for Windows INI files and is recognized by virtually all parsers. The : separator is used in some Unix-style configurations. Most parsers accept both, but = is the safer default.

  • What is UTF-8 BOM?

    The Byte Order Mark (BOM) is a 3-byte sequence (EF BB BF) prepended to a text file. It signals to text editors and parsers that the file uses UTF-8 encoding. Enable it if your INI file contains non-ASCII characters and will be read by Windows Notepad or legacy applications.

  • What file formats are supported?

    The tool accepts .csv (comma-separated values) and .tsv (tab-separated values) files. You can also enter data manually through the built-in table editor.

  • Can I have key-value pairs without sections?

    If your CSV has no section column (all rows have the same or empty section value), the tool outputs a flat list of key-value pairs. Some parsers accept sectionless INI files; others require at least one section header.

  • Is there a file size limit?

    Processing is entirely client-side. The practical limit depends on your browser and device memory. Files up to several megabytes typically work without issue.

Featured Tools

Featured tools that you might find useful.

Popular Tools

List of popular tools that users love and frequently use.

New Tools

The latest tools added to our collection, designed for you.

Topics

The tools grouped by topics to quickly find what you need.
Free online Excel to JSON converter. Transform XLSX, XLS, XLSM files into JSON arrays, objects, or keyed formats instantly in your browser — no upload, 100% private.

Excel To JSON

Free online Excel to JSON converter. Transform XLSX, XLS, XLSM files into JSON arrays, objects, or keyed formats instantly in your browser — no upload, 100% private.
Free Excel to CSV converter. Convert XLSX, XLS, XLSM to CSV instantly in your browser. No upload, 100% private. Edit, transpose, deduplicate before exporting.

Excel To CSV

Free Excel to CSV converter. Convert XLSX, XLS, XLSM to CSV instantly in your browser. No upload, 100% private. Edit, transpose, deduplicate before exporting.
Free online Excel to SQL converter. Generate CREATE TABLE and INSERT statements from spreadsheets for MySQL, PostgreSQL, SQLite, and SQL Server. Supports batch insert, primary keys, and type inference.

Excel To SQL

Free online Excel to SQL converter. Generate CREATE TABLE and INSERT statements from spreadsheets for MySQL, PostgreSQL, SQLite, and SQL Server. Supports batch insert, primary keys, and type inference.
Free online Excel to ASCII table converter with 10 border styles (MySQL, Unicode, reStructuredText, and more). Add code comment wrappers in 8 languages. Supports text alignment. Client-side processing.

Excel To ASCII Table

Free online Excel to ASCII table converter with 10 border styles (MySQL, Unicode, reStructuredText, and more). Add code comment wrappers in 8 languages. Supports text alignment. Client-side processing.