General 14 min read

10 Years of Money in a Text File: The Quiet Case for Records You Own

MMNMNOTE
plain-textdata-ownershiplocal-firstlongevityfile-formatsnote-taking

A decade of personal finances, kept as plain text. Not in an app, not in a vault, not in anyone's cloud, but in files you can open in any editor on any machine. The interesting part is not the bookkeeping. It is that the record still opens today, and will keep opening after the tools that made it are gone.

In December 2025, the developer Siddhant Goel published a quiet post about exactly this. It reached 502 points on Hacker News.1 His ledger, he wrote, "contains over 45,000 lines of Beancount entries spread across 16 plain text files."2 Around ten thousand transactions, recorded by hand over ten years. The post is not about money. It is about what survives.

A note on scope: this is an essay about record-keeping format and ownership (whether your files still open in a decade), not financial, tax, or accounting advice. The lesson is about the text, not the bookkeeping.

What people argue about when they argue about money software

Most advice about tracking your finances is a fight about apps. Which one syncs best, which one imports your bank automatically, which one has the nicer charts. The implicit promise is always the same: pick the right tool and the problem is solved. So the question becomes which app, and the answer ages badly.

The trouble is that apps are the part most likely to disappear. Pricing changes, companies fold, formats get deprecated, an export breaks. A 2026 Hacker News thread on plain-text finances drew a telling reply.

A user named skwee357, who carries fourteen years of personal finance data this way, wrote: "I tried all the available personal finance apps there are, from cloud/online offerings to offline apps. Eventually, I settled on beancount because it is the most versatile file format."3 He came back to text. Many do.

The pattern is consistent enough to be its own genre. Someone tries the polished app, builds a few years of history inside it, then watches the company change its terms or shut the export, and rebuilds in something they can read without permission. Plain text is where that journey tends to end, because there is nowhere further down to fall — the file is already the rawest, most portable thing the data can be.

Why a record you don't own fails the ten-year test

The flaw is structural, not incidental. If your records live inside one company's app, access to your own history is a feature that company can revoke, reprice, or retire. The data is real; the door to it is rented. The ten-year test is simple: open a file you made a decade ago, with no original software. Most exports fail it.

Plain text passes it by construction. The Library of Congress, in its Recommended Formats Statement for textual works, lists "Plain text" among its accepted formats, with character encoding "in descending order of preference: UTF-8, UTF-16 (with BOM), US-ASCII."4

A national archive plans in centuries. The format it trusts for that horizon — plain text, the same medium a love letter could be written in — is the one a single developer used for a decade of receipts, because the guarantee is the same. A file you can read without an application is a file no vendor can close.

What actually survives: the record, not the tool

What survives is the part you can read with nothing. Goel's conclusion lands on this: "All of it will outlive any app or service, and that, I feel, is why plaintext accounting is so powerful."5 The durable thing is the text. The tools are interchangeable, and that is the whole point: none of them is required.

This is the quiet thesis of an entire practice. Plain Text Accounting, the community portal run by hledger's maintainer Simon Michael, defines it plainly: "a way of doing bookkeeping and accounting with plain text files and efficient, command-line-friendly software like Ledger, hledger, or Beancount."6

The same portal states the reason without decoration: "Accounting data is valuable; we want to know that it will be accessible for ever - even without software (you can keep paper copies). … So, we store it as human-readable plain text."7 Accessible for ever, even without software. That is the whole case.

The tools are worth naming, factually, because their history is the argument. "In 2003, John Wiegley invented Ledger… In 2007 and 2008 it was joined by hledger and Beancount respectively, and as of 2019 there are more than a dozen Ledger-likes."8 Ledger is BSD-licensed; hledger and Beancount are open source.9

A vendor can revoke a subscription. No one can revoke a file format that a dozen open tools already read. The data, the portal notes, is "more future proof. You can access it relatively easily with different software, newly-written software, or no software."10

"But text can't hold a receipt" — and other honest objections

The honest objections deserve honest answers, not a pitch. Text cannot hold a scanned PDF, so it does not try to. Goel keeps "about 500 documents in the repository" (507 receipts by his own count) beside the text ledger, not inside it.11 The durable core stays plain text; the attachments live next to it, readable on their own.

The other fair objection is that this particular practice is niche. Tracking a decade of finances in a command-line ledger is a power-user habit, and most people will never do it. That is fine. The point was never "use Beancount"; the point is the principle underneath, and it generalizes far past money.

A reader on that same Hacker News thread, yanis_t, made the leap unprompted: "I started storing all my notes (500+ by today) in markdown files locally. It's easy to search and navigate with grep and ag/rg. It's easy to edit in Vim or your favorite editor. … The versioning and sync is solved by git."12

The same reason a decade of finances lives safely in text is the reason your notes should. The content differs; the fragility and the fix do not. It is the argument for keeping one big text file of the things you mean to remember, and the same instinct behind learning to save the page, not the link when the thing you want to keep lives on someone else's server.

What to do with this tomorrow

You do not need a ledger, or any accounting at all, to act on the lesson. You need to move the records you would hate to lose into a format you can open with nothing, on a device that is yours. The practice is niche; the principle is not. Three concrete moves:

Goel's habit cost him "about 30-45 minutes every single month" since January 2016.13 A ritual, not a database. The cost is honest, and the payoff is a record that is still his, in full, ten years on.

Frequently asked questions

Why keep records in plain text instead of an app? Because plain text is readable without the software that made it. As the Plain Text Accounting portal puts it, the data is "more future proof. You can access it relatively easily with different software, newly-written software, or no software."10 An app can be repriced, deprecated, or shut down; a plain-text file you own on your device cannot be closed by a vendor.

Will my files still open in ten years? Plain text is among the most durable formats there is. The Library of Congress lists "Plain text" in its Recommended Formats Statement for textual works, preferring UTF-8 encoding.4 Siddhant Goel's lived proof is a decade of finances — 45,000 lines across 16 files — that still open in any editor today.2

What is Plain Text Accounting? It is "a way of doing bookkeeping and accounting with plain text files and efficient, command-line-friendly software like Ledger, hledger, or Beancount."6 The records are human-readable text files you control; the software is a way to read and report on them, and several open tools can.

Which of those tools should I choose? That is the wrong end of the question, and deliberately so. Ledger, hledger, and Beancount are the practice's three established open tools — Ledger (2003, BSD), hledger (2007), Beancount (2008), all open source.89 The durable choice is the format, not the tool; pick whichever reads the files you own, and you can switch later without losing anything.

Can plain text hold receipts and attachments? The text holds the record; attachments sit beside it. Goel keeps around 500 PDF documents in the same repository as his text ledger — 507 by his own shell count.11 The readable core stays plain text; the scans live next to it as separate files, so nothing important is locked inside a proprietary blob.

How big do these files even get? Smaller than you'd guess. Ten years of one person's complete finances came to roughly 45,000 lines across 16 files — about 10,000 transactions and 20,000 postings.214 Plain text is compact, greps instantly, and version-controls cleanly, which is part of why people who try the apps so often come back to it.

Is this financial advice? No. This is about record-keeping format and ownership (whether the file still opens in a decade), not about how to do your accounting, taxes, or budgeting. The argument is the same whether the text holds money, notes, or a novel: own the file, and the file outlives the tool.

The most important decision about any record you keep is not which app feels best this year. It is whether the words will still open when the app is gone. A decade of money in a text file already answered that, and the same answer holds for your notes: the durable place for the things you mean to keep is plain text, on a device that is yours.


This builds on Siddhant Goel's decade-long plain-text ledger — the lived proof that a record you own outlives the tool that made it.

If files outlast apps, then the only question worth asking about a note tool is how easily your words leave it. MNMNOTE keeps your notes as plain Markdown on your own device — open them in any editor, a decade from now, with nothing but a text reader.

Footnotes

  1. "10 years of personal finances in plain text files," Hacker News, story id 46463644 (submitted by wrxd, 2026-01-02), 502 points as of 2026-06-08. https://news.ycombinator.com/item?id=46463644

  2. Siddhant Goel, "10 years of personal finances in plain text files," sgoel.dev, 2025-12-20. "All in all, my ledger contains over 45,000 lines of Beancount entries spread across 16 plain text files." https://sgoel.dev/posts/10-years-of-personal-finances-in-plain-text-files/ 2 3

  3. skwee357, comment on "10 years of personal finances in plain text files," Hacker News, 2026-01-02. https://news.ycombinator.com/item?id=46463644

  4. Library of Congress, "Recommended Formats Statement — Textual Works," loc.gov, accessed 2026-06-08. https://www.loc.gov/preservation/resources/rfs/text.html 2

  5. Siddhant Goel, "10 years of personal finances in plain text files," Closing Thoughts, sgoel.dev, 2025-12-20. https://sgoel.dev/posts/10-years-of-personal-finances-in-plain-text-files/

  6. "Plain Text Accounting," plaintextaccounting.org (Simon Michael), accessed 2026-06-08. https://plaintextaccounting.org/ 2

  7. "What is Plain Text Accounting?", plaintextaccounting.org, accessed 2026-06-08. https://plaintextaccounting.org/What-is-Plain-Text-Accounting.html

  8. "What is Plain Text Accounting?", plaintextaccounting.org, accessed 2026-06-08. https://plaintextaccounting.org/What-is-Plain-Text-Accounting.html 2

  9. "Ledger: Command-Line Accounting," ledger-cli.org, accessed 2026-06-08; "Beancount: Double-Entry Accounting from Text Files" (GNU GPLv2 only), github.com/beancount/beancount, accessed 2026-06-08. https://ledger-cli.org/ · https://github.com/beancount/beancount 2

  10. "What is Plain Text Accounting?", plaintextaccounting.org, accessed 2026-06-08. https://plaintextaccounting.org/What-is-Plain-Text-Accounting.html 2

  11. Siddhant Goel, "10 years of personal finances in plain text files," sgoel.dev, 2025-12-20. "Next, there are about 500 documents in the repository." https://sgoel.dev/posts/10-years-of-personal-finances-in-plain-text-files/ 2

  12. yanis_t, comment on "10 years of personal finances in plain text files," Hacker News, 2026-01-02. https://news.ycombinator.com/item?id=46463644

  13. Siddhant Goel, "10 years of personal finances in plain text files," sgoel.dev, 2025-12-20. "Since January 2016, I've taken out about 30-45 minutes every single month to download my monthly bank statements and import them into my Beancount ledger." https://sgoel.dev/posts/10-years-of-personal-finances-in-plain-text-files/

  14. Siddhant Goel, "10 years of personal finances in plain text files," sgoel.dev, 2025-12-20. "Running bean-query on main.beancount tells me I have about 10,000 transactions in total, that in turn contain about 20,000 postings." https://sgoel.dev/posts/10-years-of-personal-finances-in-plain-text-files/