Turn INI / .cfg / .conf into JSON and back, with section nesting, comment stripping and optional type inference, all in your browser
- Runs locally
- Category Format Converter
- Best for Checking file type, size, metadata, and obvious mismatch signals before sharing.
Converted output appears here.What this tool does
Free INI to JSON converter that runs entirely in your browser. Paste any INI, .cfg or .conf file and get clean JSON in one step: every [section] header becomes a nested object, the key=value (or key:value) lines under it become that object's properties, and keys that sit above the first section land at the top level as global keys. Both ; and # comments are dropped, and a trailing comment on a value line is stripped while a # inside a quoted value or a color like #fff is left alone. Flip the direction to turn JSON back into INI: top-level objects become [section] blocks, top-level scalars become global keys, and strings that could be mistaken for numbers get quoted so the result round-trips. The type-inference switch decides whether 42, true and null come through as real JSON types or stay as strings. One click copies the output and the share link reproduces your exact input and options. Nothing is uploaded.
Tool details
- Input
- Text + Numbers + Structured content
- The page exposes text boxes, numeric controls, file pickers, or structured inputs depending on the tool.
- Output
- Live result + Copy
- The result area focuses on usable output, with copy, download, or preview actions when supported.
- Privacy
- Browser-side processing
- The main tool logic does not call an external API, so inputs normally stay in the current tab.
- Save / share
- Shareable URL state
- Key settings are encoded in the URL so another person can reopen the same setup.
- Performance budget
- Initial JS <= 9 KB
- No WASM budget is declared, keeping the tool quick to open on mobile.
- Best fit
- Format Converter · Developer
- Category and role tags drive related tools, internal links, and quick fit checks.
How to use
-
1. Input
Paste or drop your content into the tool panel.
-
2. Process
Click the button. All processing is local in your browser.
-
3. Copy / Download
Copy the result or download to disk in one click.
How INI to JSON Converter fits into your work
Use it before upload, handoff, archive, support review, or any moment where a file needs one local check before it leaves your machine.
File jobs
- Checking file type, size, metadata, and obvious mismatch signals before sharing.
- Preparing mixed folders for upload, archive, intake, or review.
- Keeping sensitive files in the browser instead of sending them to an account-based service.
File checks
- Do not treat the extension alone as proof of the real file type.
- Review metadata before a file goes to customers, vendors, or a public page.
- Keep the original file until the copied, converted, or exported result is verified.
Good next steps
These links move the current task into a more complete workflow.
- 1 INI Formatter & Validator Format and validate INI / TOML-like config — sort sections, align equal signs. Open
- 2 JSON Formatter & Validator Format, validate, and minify JSON instantly — right in your browser. Open
- 3 .env File Validator .env file validator — parse Bash-style .env, detect dups / missing required / unsafe values / leaked secret patterns; cross-compare prod / staging / dev envs. Open
Real-world use cases
Migrate a legacy INI config into a JSON-based app
You are moving an old service from a config.ini to a Node or Go app that reads JSON. Paste the whole INI here, turn on type inference so port=8080 becomes a real number and ssl=true a real boolean, and copy the JSON straight into config.json. The [section] structure carries over as nested objects, so you keep the same logical grouping without retyping a single key.
Inspect a .cfg or .conf file as readable JSON
Some daemons ship dense .conf files where it is hard to see the shape at a glance. Drop the file in, read it as indented JSON, and the sections and keys line up clearly. Because comments are stripped, you see only the live settings, which makes it obvious what is actually configured versus what is commented out.
Generate an INI file from a JSON template
A tool you are integrating wants an old-style INI, but your source of truth is JSON. Switch to JSON to INI, paste your object, and get a ready-to-save settings.ini. Values that look numeric but should stay text get quoted automatically, so a zip code or a version string is not silently turned into a number on the next read.
Diff two configs by normalizing them to JSON first
Comparing two INI files directly is noisy because spacing, comment order and key order vary. Convert both to JSON with the same options, paste them side by side in your editor, and a structural diff shows only the real differences in values, not formatting churn.
Common pitfalls
Expecting deep nesting. INI is flat under each section header and goes only one level deep, so a JSON object whose value is itself an object of objects (a then b then c, three levels down) cannot be expressed and the JSON to INI direction will reject it. Restructure to a single level of sections, or use a properties or YAML tool for deeper trees.
Leaving type inference on when you need strings. With inference on, a zip code 08055 or a phone-like 123456 becomes a number and may drop leading zeros. If a value must stay text, turn inference off, or wrap that value in double quotes so it is always read as a string.
Assuming arrays survive. Classic INI has no array syntax, so a JSON list value such as the three numbers one, two, three has nowhere to go and the converter throws rather than guessing a comma-joined string. Flatten the list into separate keys or move that part to a JSON-native config.
Privacy
Every step runs as plain JavaScript inside your browser tab. The INI parse, the JSON build, the reverse conversion and the type inference all happen locally, and no config text is ever uploaded or logged. The one thing to know: the share link encodes your input and options in the URL query string, so pasting a share link into chat will record that config in the recipient server's access log. For a secret-laden config, use the copy button and paste the text rather than the link.
FAQ
Tool combos
Folks in your role tend to reach for these alongside this tool.
- 555 Timer Calculator Astable f = 1.44/((R1+2R2)C) + monostable t = 1.1RC — pick R1, R2, C in Ω/kΩ and µF/nF, read frequency, duty cycle and pulse width — browser-only
- Add Line Numbers Number every line of pasted text — set start, step and separator, zero-pad to align, skip blanks, or strip numbers back off — browser-only
- AES Text Encryptor Encrypt & decrypt text with a password — AES-256-GCM + PBKDF2 via WebCrypto — 100% in your browser, nothing uploaded
- Affine Cipher Encoder & Decoder Encrypt and decrypt the ax+b affine cipher with live modular-inverse check, browser-only