en

JSON to TOML

Convert a JSON file to TOML locally - readable config with tables, no upload, right in your browser.

Running locally on your device ...

0%

Your files never left your device

    Is my file uploaded?

    No. Everything runs in your browser - your file never leaves your device. How this is verifiable

    No upload100% local
    Your content stays with youno third-party access
    Servers in GermanyGDPR by design
    Independently auditedTLS A+ · HTTP headers A+

    JSON is the interchange format of APIs and programs, but as a config file for humans TOML is more pleasant: sections in square brackets, plain key-equals-value lines and comments keep it tidy. This tool serialises your JSON object into well-formed TOML, like the kind Cargo.toml or pyproject.toml use.

    The conversion runs entirely locally in your browser (smol-toml, pure JavaScript). Objects become tables, nested objects become sub-tables (such as [server.meta]), arrays become TOML arrays and strings, numbers and booleans become scalars. Because a TOML document needs a table at the top level, an array, scalar or null at the root is rejected with a clear message instead of failing cryptically.

    You will meet this when generating a Cargo or pyproject configuration from a template, turning settings a program emitted as JSON into a hand-editable .toml, or producing a readable config from an API. Honestly: TOML has no null type - objects with null values are rejected with a clear message, not silently dropped. Nothing is uploaded.

    Specifications

    Specifications
    Input formatsJSON
    Output formatTOML
    Batch processingNo
    ProcessingLocally in your browser (JavaScript)
    File uploadNone

    In 3 steps

    1. Drop or pick your JSON file.
    2. The tool serialises it to TOML.
    3. Download the TOML file.

    Limitations: Expects a JSON object at the top level; an array, scalar or null at the root is rejected with a clear message. Nested objects become sub-tables, arrays become TOML arrays. TOML has no null type, so objects with null values are rejected. Key order follows the JSON.

    FAQ

    Is my file uploaded?

    No. The conversion runs entirely locally in the browser - nothing is sent.

    Why must the root be an object?

    A TOML document is a table at the top level; an array or scalar cannot be a TOML root.

    How are nested objects mapped?

    To TOML tables and sub-tables, such as [server] and [server.meta].

    What happens with null values?

    TOML has no null type; objects containing null are rejected with a clear message instead of being silently dropped.

    Does the reverse work too?

    Yes, with our "TOML to JSON" tool.

    Related tools