HACKER Q&A
📣 mdrzn

How do you record your personal finances?


This is a recurring question that pop up every couple of years, but it's always interesting to see what people use nowadays.

How do you track your personal finances? Excel sheet? Python script? Self-hosted dashboard?

Do you use open source software, did you code your own, or do you subscribe to a service?

I'm more interested in the basic spending tracking functions (auto importing from bank, auto tagging categories, etc) than having it track my investment portfolio.


  👤 johnthesecure Accepted Answer ✓
I currently use a Google sheet, but I'm looking for something better.

I have many automatic payments (credit card, telephone, utilities, etc) from a transaction account. I also have a loan with redraw, and I want to have most of my funds keeping the loan balance low, but I don't want my transaction account to go negative. So I need to forecast future transactions.

Future transactions may be annual, monthly, four weekly, two weekly, etc. It's a real mess. Some are easy to predict accurately, others can only be estimated.

I have a column to keep track of which future transactions are predictions/estimates/allowances, and which ones have been confirmed.

I also have a column to keep track of which transactions have been reconciled with the bank. (This is currently a manual cross-checking process, since my bank doesn't have API access.)

My preference would be a text-based system (https://plaintextaccounting.org/), but haven't found one that neatly allows estimates of future transactions that can be modified once the details are known.


👤 workingon
I don’t at all. Sometimes living “paycheck to paycheck” has its perks. Make sure to have enough money with the last check of the month to pay the mortgage, while having the largest 401k contribution you can manage. Without active investing or any real savings there doesn’t seem to be much benefit to calculating cash in vs cash out any more than my bank app does. If there’s something out there useful for my case let me know! I’m just not sure how much optimization can be done with this lifestyle.

👤 phil294
German banks support an open protocol: FinTS/HBCI with which you can automize stuff. There's a Python library for it [1] and I wrote my own little cli tool that allows you to configure your (potentially recurring) target vs. actual expenses, while setting expiration dates to get notifications about unexpected transactions. Still somewhat WIP though

[1] https://github.com/raphaelm/python-fints [2] https://github.com/phil294/fints-transaction-tracker


👤 sph
I've been using YNAB (You Need A Budget) for more than a decade now. Big fan, not affiliated.

https://www.youneedabudget.com/


👤 lostdog
Just an excel sheet that I put balances into monthly. As long as the numbers go up, everything's fine.

The hardest part is separating investment "earnings" from real earnings. I'd like to know whether I'm saving money from my direct compensation, or whether I'm leaching off stock market gains, but I'm not sure of the right way to track the difference.


👤 GravitasFailure
Gnucash. Not that hard to learn and use, free, libre, and pretty solid community support. It's served me really well for several years including some changes in my financial situation and complexity.

👤 Yaser_Amiri
I use these as a stack: hledger + dab-dab + Surfingkeys

Basically all I need to do is: login in to the bank's web app and press Ctrl+Alt+P

I wrote a script which can take transactions from my banks webapp, gave it to dab-dab (https://github.com/Yaser-Amiri/dab-dab), added a key binding to Surfingkeys to extract the token and other related stuff from the cookies, send it to dab-dab to run the script, the script adds the transactions to the ledger files.

By the way I have some extra sugers in the script for resolving the destination/source of money to hledger's accounts and descriptions.


👤 XorNot
I eyeball the outgoings and incomings of my bank account a few times a month, nod at the results and move on with life.

The only things I track are stuff which has tax implications - in which case things like that go in my FY folder until tax time.


👤 silicon2401
Pen and paper. I don't like the idea of giving yet another private company access to my private info, and I find that the manual aspect of tracking finances by hand makes it feel more real and impactful to me.

👤 eddyg
I switched from Mint to https://copilot.money/ a year or so ago and haven't looked back. Vastly better experience. Automatic categorization of downloaded transactions that you "review" day-by-day (to make any category adjustments) is great. It also has automatic budget calculation and tracking (and allows you to set some categories as "carryover", so you have more to spend later when you spend less.)

👤 plucas
Beancount (https://beancount.github.io/) plus a script for formatting bank statement CSVs.

👤 bwooceli
One Excel spreadsheet, four bank accounts (only one of which is "actively managed"):

Protected Checking, Protected Savings, Discretionary Checking, Discretionary Savings

All income and all "regular bills" are aimed at Protected Checking. Every Friday, a fixed (but mutable) amount of weekly "discretionary" money transfers to Discretionary Checking, and a fixed amount goes to Protected Savings.

Discretionary Checking is ALL food, groceries, gas, dining out, random crap. If the I swipe my card, it is discretionary. Protected Checking is ALL bills, utilities, mortgage, etc.

To manage Protected Savings, I use a spreadsheet with 7 columns:

Date, Payee / Source, Category, Sub Category, Amount (all income is positive, all outflow is negative), Balance (=one cell up + amount on this row), Cleared (blank if in the future, "X" for when I reconcile)

I took a few hours about 7 years ago and added ALL expected paychecks (excluding bonus), bills/expenses, and transfers to Discretionary and Protected Savings for the next 5 years to it. So I only spend time reconciling the Protected Checking account - once a month or so I copy the ledger from my bank website and go down the list, checking them off and updating the amounts as needed.

Other than a quick glance for anything unexpected, I don't reconcile/audit the discretionary account.


👤 dbrueck
I've been using a spreadsheet for about 20 years and occasionally I'll be curious enough to try something else but I always come back to the humble spreadsheet, plus a script to massage the CSV export from my bank.

Though it's not fully automated, it's close enough, it provides unlimited flexibility (every other system I've tried eventually gets in my way a little too much), and the price ($0) is just right.


👤 binaryjason
I have been trying out Lunch Money. It's pretty much a YNAB clone but seems to be more developer focused (uses mono space fonts and has API). It uses Plaid just like YNAB, but somehow auto import seems to more reliable on some banks.

Here is my referral link: https://lunchmoney.app/?refer=goipolll


👤 ensocode
https://actualbudget.com/ it is now open source and free

👤 howeyc
I wrote my own[1] version of ledger-cli[2] that was a lot simpler in the format it accepts, but has features outside of the format, in the program, to do what I need/want. I have an import feature for csv files, a web interface for reports and portfolio tracking, and the usual cli features from the original.

I've got about 15+ years of transactions in a single file, and I have every intention of continuing forever.

I've been so impressed by how well plain text works for this, I always try to use plain text for as many other things as possible. Future proof. I got burned by MS Money going away, no proprietary formats again if I can help it.

[1]: https://howeyc.github.io/ledger/ [2]: https://www.ledger-cli.org


👤 Seriomino
I only have one excel showed which contains all our bank accounts including brokering.

I don't live over my means so I stoped trying to record everything but because I'm saving for a house, I need to know roughly how much I have across different accounts.

And for everyone curious about why I have more accounts: I have my account, we have a shared account, my wife has one, 1 company brokering account, private brokering account and most critical an banc account for reserved funds/emergency/maintenance.

I assume that when we buy a house that we will throw everything together to get the best quote.

My mane bank account actually has this analysis feature but I disabled it again because it did not add any value.

I always wire money every month out of my account. Everything I have in there is money I can just spend if I wanted to.


👤 LocalPCGuy
I use a Google sheet, and look at my finances twice a month. Each time, I duplicate the sheet from a month back (so 2 new sheets each month). Each sheet has the bills to go look at and handle. Either to ensure they were paid (autobill) or to set up a payment.

It's in need of an update to stop duplicating sheets and just either add columns, that way I could easier do things like compare over time or create charts, etc. But I often have extra notes or other things in each sheet as needed, so I'd need a way to still incorporate those. And it's been working well; mostly ensuring I don't forget any of the individual bills.

The harder thing for me is when I get a paper bill, ensuring it gets scheduled to be looked at and paid if I don't do it right away.


👤 drakonka
I don't anymore. I have a monthly overall budget (a single number) I try to stick to. It encompasses all expenses except for rent. So this one number includes groceries as well as discretionary spending.

If I go a little over it's no big deal, but I try to stick to it. I pay myself a pretty low salary. The rest stays in my company, some as a buffer and some gets invested.

I find this solution works best for me. I'm constantly working on suppressing my impulse buying habits, but YNAB or other systems didn't really eradicate them and having this single number to aim for each month is just less stressful. I have no debt and OK savings, so I guess it's working.


👤 flarg
I used something on my Psion for many years, then Quicken for a long time, Gnucash and now a much simpler budget driven Excel workbook. Probably looking at Sqlite and Datasette next but tbh the simpler the better.

👤 scyzoryk_xyz
I used to use YNAB, but they kept on jacking their price up, and I kept on procrastinating with keeping up a record.

Having lately used Google Sheets along with AppScript for other purposes, I think I would go with that.


👤 antisthenes
I don't.

I know that my mortgage/utilities/insurance/food bill is roughly X% of my take-home earnings.

My savings are Y% of my earnings. X% + Y% is roughly ~90%.

The other 10% is an everything fund that goes to my liquid checking account in the bank. So that bank account is growing very slightly. So the only thing required from me is to look at the bank account once a quarter or so, and make sure it's still roughly at the same level and there were no outlier expenses.


👤 manifoldgeo
I use a homegrown web app that uses GnuCash behind the scenes via a Python Flask app. Works just well enough that I don't have to open GnuCash anymore.

You can try it here if interested: https://demo.checkyour.finance

Source code: https://github.com/bxbrenden/GnuCash-Helper


👤 viraptor
I did firefly-iii a few times when I was interested in historic trends. Wrote some custom tooling to auto import from the banks. But in a long term, annotating weekly/monthly just doesn't provide enough benefit for me to continue doing that. It's easier to do a big import every few years when I actually need the data.

If I was doing it again, I'd probably go with one of the cli text ledgers so the process is easier to preserve and closer to ETL.


👤 sbehere
I use a home grown set of scripts to automatically pull transactions from banks/credit cards where possible, auto categorize them, and create shareable dashboards. All without sharing credentials with any third party.

The method is described in this blog post: https://sagar.se/blog/where-is-the-money/


👤 misterspaceman
Moneydance, using the technique described here https://youtu.be/eIcsMHL0NJ0 and https://youtu.be/QOtZ6Bwzlf8.

It's a super simple way to use envelope accounting (ala Dave Ramsey), without using actual cash.


👤 adamlangsner
I built this purely frontend tool to plan out my budget. It looks like crap but it works great. I built it in 2012 and havent touched the code since.

It lives on an S3 bucket and stores the data in local storage.

http://www.mindlessflash.com/budget


👤 ragebol
I almost exclusively via debit or credit card, so those expenses are tracked there. If I need a log, I can download a .csv file. Income is only once a month and pretty predictable, more than we spend with a margin that goes to savings, so in short: I don't keep track really.

👤 khyryk
I save the annual account statement PDFs in a folder and add up the amounts across accounts manually in a simple spreadsheet. There's no need for me to go crazy tracking every dollar in and out because I spend well below my cash flow.

👤 mosiuerbarso
YNAB. But the old version, not the new subscription based service. I've been using it for years now. It's budgeting system really helped to turn my money management skills around. I was crap with cash before I started using it.

👤 poidos
I used to do it by hand with a spreadsheet I built, but after finding a few bugs in my spreadsheet and getting tired of manually managing things, I switched to YNAB.

The risk there is that they use Plaid on the backend.


👤 RhysU
A checkbook register, mostly, along with reading the credit card bill.

👤 bradfa
A paper checkbook for regular spending things, keeping the old ones filed away in order, and tracking of other accounts and balances on sheets of paper (one per month) in a folder.

👤 closewith
I use Pocketsmith for their automated bank feeds, but I'm thinking of moving as they don't support the bank I have my mortgage with, leading to periodic statement imports.

👤 shever73
I use a shared spreadsheet with my wife. We’ve tried various apps and different methods, but we’ve found the spreadsheet works best.

👤 jeegsy
Dowload csv from bank once a month. Use python to automate categories. Add to database, explore with datasette

👤 SMAAART
mint.com to track everything + a google spreadsheet for forecasting.

It's OK, not perfect but OK.


👤 pneumatic1
Quicken is one of the only subscriptions I have that I don’t consider canceling.

👤 cavemanSam
Toshl. I have been using it since 2015, perfectly suits my use case.

👤 mdrzn
Anyone using Homechart?

👤 wooque
Just a simple Excel (LibreOffice Calc to be exact) sheet

👤 roschdal
A Google spreadsheet

👤 woldemariam

👤 unixhero
Excel