We half-ass manually went back and added up our expenses for about six months a few years ago, determined there were no surprises and never did it again. Since then we've had two kids, merged our finances, about tripled our net worth, and set a FIRE date for next year. The upcoming FIRE date made it more urgent to actually verify that our expenses still were what we thought they were, so I've been meaning to figure out how to do this. This weekend it was time. I read up on various approaches to expense tracking (Mint, gnucash, etc) and given my profession as a programmer and my visceral dislike of having to hand over our complete economical picture to a third party, I settled on "beancount" (
https://github.com/beancount/beancount.)
I'd never heard of beancount before, but I find it really cool. The approach is that all your financial info live in plaintext files that you can edit and generate however you want. Over the weekend I've written importers that can ingest the files exported from our banks, plus from Amazon and Paypal, and generate transaction information. With that set up, it was pretty quick work to import the YTD info and go through and classify expenses, and I can now generate plots like the attached showing where the money goes. It should take an hour or two to process and classify additional activity every quarter or so.
Beancount can also handle tracking brokerage info, like keeping track of cost basis for share lots, etc, but this is much more difficult to import correctly and I don't feel much need to since we have it all in Fidelity and it's pretty easy to see what's going on. The expense side is much more spread out.
Anyway, I searched the forum and didn't see any mention of it so I thought I would point it out if anyone's interested.