Hacker ApprovedDepartments

TOML

Ranked 2 of 9 configuration languages by recommenders

A config file format people pick for simple, human-edited settings, valued for readability and comments. Critics say nested lists and tables get awkward and it lacks features.

A config file format people pick for simple, human-edited settings, valued for readability and comments. Critics say nested lists and tables get awkward and it lacks features.

32 people gave an opinion

recommend it
19
criticize it
13
approval share
59%
Each figure is one person. RecommendsCriticizes

Recommended in 8 of 13 months

  1. November 2025: recommended
  2. December 2025: recommended
  3. January 2026: recommended
  4. February 2026: not recommended
  5. March 2026: recommended
  6. April 2026: not recommended
  7. May 2026: not recommended
  8. June 2026: recommended
  9. July 2026: recommended
  10. August 2026: recommended
  11. September 2026: recommended
  12. October 2026: not recommended
  13. November 2026: not recommended (month in progress)

Why it doesn’t carry the badge

  • 19 people recommend itNeeds 10 or more, met.
  • 1.4 recommenders for every criticNeeds 2 to 1 or better, not met.
  • Recommended in 8 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

  • Readable for simple configuration files

    “for really simple cases I'm more likely to reach for TOML”

    Comment from 29 Nov 2025 in “SQLite as an Application File Format”

    “We are using TOML for config files and just do fine.”

    Comment from 28 Aug 2026 in “That's a Lot of YAML”

    “for configuration TOML is clearly more pleasant”

    Comment from 18 Nov 2025 in “Things I don't like in configuration languages”
  • Good for personal project configuration

    “It's what I've been using for complex configuration in personal projects”

    Comment from 28 Aug 2026 in “That's a Lot of YAML”

    “it's probably my favourite configuration format”

    Comment from 28 Aug 2026 in “That's a Lot of YAML”
  • Preferred over JSON or YAML for config

    “for configuration TOML is clearly more pleasant”

    Comment from 18 Nov 2025 in “Things I don't like in configuration languages”

    “That being said TOML would be my choice.”

    Comment from 17 Nov 2025 in “Things I don't like in configuration languages”

    “So what you want is just TOML.”

    Comment from 20 Jul 2026 in “Hyprland 0.55 announced the switch to Lua for its config files”

What people warn about

Each mark is one comment

  • Nested lists and tables are painful

    “great at automatically restricting config complexity by making nested lists of tables miserable”

    Comment from 20 Jul 2026 in “Hyprland 0.55 announced the switch to Lua for its config files”

    “inline tables partially solve the long keys problem, lists will still feel relatively painful.”

    Comment from 19 Dec 2025 in “TOML 1.1.0 released”

    “Tables in TOML have uniquely bad format”

    Comment from 20 Jul 2026 in “Hyprland 0.55 announced the switch to Lua for its config files”
  • Poor fit for highly structured data

    “I'm not really a fan of TOML when the data is highly structured”

    Comment from 2 Jun 2026 in “You Don't Love Systemd Timers Enough”

    “TOML and the like don't have enough features.”

    Comment from 1 Mar 2026 in “Why XML Tags Are So Fundamental to Claude”
  • Hard to read as a human

    “I find the toml structure impossible to follow as a human.”

    Comment from 3 Sep 2026 in “Why do so many tools have JSON config files?”

    “I find TOML is nowhere near as good as YAML”

    Comment from 2 Sep 2026 in “Why do so many tools have JSON config files?”

Other configuration languages people recommend

The four most recommended other configuration languages, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.

TOML compared with 4 alternatives
ProductRecommendCriticizeApprovalMonthsOwnedBadge
CUE29781%12—Approved
TOMLThis page191359%8——
Jsonnet12380%5—Approved
HCL101540%6——
Dhall90100%5——
See all 9 configuration languages, ranked

What people said

27 of the 33 comments that mention it, newest first. Each links to the original comment.

“I would do a quick check to see JSON or TOML is sufficient and practical.”

RecommendsComment from 30 Sep 2026 in “Tcl/Tk 9.1”

“I find the toml structure impossible to follow as a human.”

CriticizesComment from 3 Sep 2026 in “Why do so many tools have JSON config files?”

“There are always an infinity of ways one can write the same values.”

CriticizesComment from 2 Sep 2026 in “Why do so many tools have JSON config files?”

“I find TOML is nowhere near as good as YAML”

CriticizesComment from 2 Sep 2026 in “Why do so many tools have JSON config files?”

“primarily because TOML accepts comments”

RecommendsComment from 2 Sep 2026 in “Why do so many tools have JSON config files?”

“It's what I've been using for complex configuration in personal projects”

RecommendsComment from 28 Aug 2026 in “That's a Lot of YAML”

“Unlike hjson, toml and many others, JSON5 didn't try to reinvent the wheel”

CriticizesComment from 28 Aug 2026 in “That's a Lot of YAML”

“We are using TOML for config files and just do fine.”

RecommendsComment from 28 Aug 2026 in “That's a Lot of YAML”

“it's probably my favourite configuration format”

RecommendsComment from 28 Aug 2026 in “That's a Lot of YAML”

“Tables in TOML have uniquely bad format”

CriticizesComment from 20 Jul 2026 in “Hyprland 0.55 announced the switch to Lua for its config files”

“So what you want is just TOML.”

RecommendsComment from 20 Jul 2026 in “Hyprland 0.55 announced the switch to Lua for its config files”

“having half-assed types like "int" in the config file format itself is not only useless, it's counterproductive”

CriticizesComment from 20 Jul 2026 in “Hyprland 0.55 announced the switch to Lua for its config files”

“but I think for stupid config even that is too much.”

CriticizesComment from 20 Jul 2026 in “Hyprland 0.55 announced the switch to Lua for its config files”

“great at automatically restricting config complexity by making nested lists of tables miserable”

RecommendsComment from 20 Jul 2026 in “Hyprland 0.55 announced the switch to Lua for its config files”

“I wish TOML had been around so they could have had something sensible”

RecommendsComment from 2 Jun 2026 in “You Don't Love Systemd Timers Enough”

“I'm not really a fan of TOML when the data is highly structured”

MixedComment from 2 Jun 2026 in “You Don't Love Systemd Timers Enough”

“how pathetic toml is with arrays”

CriticizesComment from 10 Apr 2026 in “I built a Cargo-like build tool for C/C++”

“I honestly don't understand why anyone likes that.”

CriticizesComment from 5 Mar 2026 in “Relax NG is a schema language for XML”

“TOML and the like don't have enough features.”

CriticizesComment from 1 Mar 2026 in “Why XML Tags Are So Fundamental to Claude”

“I also like (old) .ini / TOML for small (bootstrap) config files”

RecommendsComment from 17 Jan 2026 in “Why There's No Single Best Way to Store Information”

“TOML (which is warty-but-usable)”

MixedComment from 16 Jan 2026 in “Cue Does It All, but Can It Literate?”

“This is one of those unfortunate things in TOML that I would honestly ignore”

CriticizesComment from 27 Dec 2025 in “How uv got so fast”

“inline tables partially solve the long keys problem, lists will still feel relatively painful.”

MixedComment from 19 Dec 2025 in “TOML 1.1.0 released”

“for really simple cases I'm more likely to reach for TOML”

RecommendsComment from 29 Nov 2025 in “SQLite as an Application File Format”

“for configuration TOML is clearly more pleasant”

RecommendsComment from 18 Nov 2025 in “Things I don't like in configuration languages”

“with python 3.11 there is also TOML, which is nice”

RecommendsComment from 17 Nov 2025 in “Things I don't like in configuration languages”

“That being said TOML would be my choice.”

RecommendsComment from 17 Nov 2025 in “Things I don't like in configuration languages”

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.