
Using GnuCash as a Freelancer to Track Finances and Prepare Taxes - nickjj
https://nickjanetakis.com/blog/using-gnucash-as-a-freelancer-to-track-finances-and-prepare-taxes
======
ThrustVectoring
>I don’t own a credit card (by choice)

If you have the organizational skills and self-discipline to use a credit card
the same way you'd use debit or cash, you're way better off using a credit
card. If your debit card gets skimmed at a gas station, your bank account will
be debited and you have a significant problem until it gets resolved. If your
credit card gets skimmed, the issuer has a problem and you need merely to
inform them and wait for a new card in the mail.

Plus, 2% cash back on all purchases is pretty nice.

~~~
nickjj
Yep, but the problem is my moral compass is potentially out of whack. I'm 100%
confident I could control using the card, but fundamentally I don't like how
credit card companies are ran. Plus I don't agree with a company keeping tabs
on my financial transactions and then profiting from that data on my behalf.

With that said, the 2% is nice but it's not enough to make me reconsider.
There probably is a number where I would give in, but since that's never going
to happen, I don't bother thinking about it.

On the other hand, debit card theft is a real concern. I partly combat that by
keeping the minimum in that account. Fortunately I haven't misplaced my card
in the last ~20 years. I'm hoping my bank would resolve it. They did really
well in a few cases where an online vendor didn't honor their own policies
(they helped me recover the funds without it being a huge deal).

~~~
w0m
> Plus I don't agree with a company keeping tabs on my financial transactions
> and then profiting from that data on my behalf.

You'll have that near equally as long as you do non-cash transactions unless
you use your debit card from an equally privacy conscious institution (maybe a
small town credit union? Until they got bought at least..).

Personally I've just accepted that my boring life is known to everyone and try
and get the perks I can out of it; free trip once a year being about what I've
managed to extract without much effort.

~~~
vanderZwan
That still does not address the "I don't agree with how they are ran"-concern.

There sadly is no US version of the Fair Finance Guide yet, but in the
countries where it does exist it is a pretty good guideline for finding banks
that align with your moral interests:

[https://fairfinanceguide.org/](https://fairfinanceguide.org/)

The Dutch one is the first version, and as a result also the most elaborate:

[https://eerlijkegeldwijzer.nl/bankwijzer/themas/](https://eerlijkegeldwijzer.nl/bankwijzer/themas/)

------
brensmith
I'm a big fan of CLI accounting software (Ledger, Beancount and hledger) for
my personal finances. Allows you to use a plain text file for recording your
financial data. If you live a large percentage of your life in a command line
environment, and you like your life scriptable, check it out. I personally use
hledger, but would recommend that folks check out
[http://plaintextaccounting.org/](http://plaintextaccounting.org/) for a great
overview of all cli accounting packages.

~~~
pmoriarty
I love the command line, and really wanted to love Ledger, but found that
manual transaction entry for it (even using Emacs) was far inferior to
Gnucash, which does far more powerful autocompletion on previous entries. This
makes Ledger impractical for manually entering thousands of transactions,
which I had to do.

I also tried some GUI interface to Ledger that was supposed to be better in
this respect, but couldn't get it to work.

~~~
burkemw3
[https://github.com/egh/ledger-autosync](https://github.com/egh/ledger-
autosync) has been real handy for me with transactions.

My "entry" work is modifying some categories that it gets wrong.

I don't fully understand your situation, so I'm not expecting it necessarily
solve your entry problems. I'm only raising awareness.

------
benjaminjackman
Does anyone have any recommendations on ways to automatically download data
from bank accounts / brokerages etc onto disk for easy / scripted importing
into GnuCash / Spreadsheets etc (instead of having to click around on the
websites and download csvs or whatever daily?).

I have seen some products aimed at developers that will bucket various banks
into APIs but not anything aimed at individuals. I have experimented with
automating it with puppeteer, but surely there has to be a better way?

Maybe it's a matter of finding and using a modern set of financial insitutions
with decent APIs. Does that even exist (in the US)?

~~~
dhruvkar
Plaid's Bank API [0]

Its free for 25 accounts and connects to most banks [1]. The only bank I've
found it doesn't work for is Barclays. I have most of my accounts (credit
cardd and banks) hooked up to pull transaction data.

It returns JSON including category of spend. I don't know GNUCash, but you
could format that any which way with a little scripting.

0: [https://plaid.com](https://plaid.com) 1:
[https://pastebin.com/WBKLMb1H](https://pastebin.com/WBKLMb1H)

~~~
orthecreedence
I can second Plaid. I use it with a read-only account on my bank, and it works
great. I have a daily cron that grabs the data and pulls it into a database on
my home network.

It's free (since I only have one use -- me), which is great.

~~~
dhruvkar
what do you use to manage the transaction data? do you go through to
categorize them? have a frontend for viewing?

~~~
orthecreedence
I pull the transactions into SQLite, and have a custom web frontend I use to
categorize them. Then for reporting, I export the whole database into a Ledger
([https://www.ledger-cli.org/](https://www.ledger-cli.org/)) file. Works
great, although it's a lot of moving pieces.

------
Wildgoose
I highly recommend GnuCash. Not only do I use it for my personal and business
accounting needs, I also use it in my role as the Treasurer of a Charity set
up to keep our local library open. It provides proper double entry accounting
and the ability to split transactions into different categories which enables
me to use it very successfully to handle the special accounting requirements
of grant spending.

~~~
icebraining
Yeah, and the basics aren't even hard to learn/use, after the person
understands the concept of double-entry. I know someone who has no particular
expertise of accounting nor computing and who uses GnuCash to manage the money
of an art group (receiving money from multiple entities, keeping track of
expenses and paying out interpreters), and almost never needs help.

------
rbcgerard
Such a great product:

\+ Free

\+ Cross platform

\+ You own/control your data

\+ extremely flexible

\+ true double entry (unlike mint etc)

\+ great for an individual power user or keeping very simple corporate books

\- a little longer to pull financial data as you need to download CSV files
etc from each financial institution

\- some reports can be a bit clunky/annoying to customize

\- Not sure i would use this for a complicated business with lots of employees
or huge volumes of transactions

------
HugoDaniel
The major version 3 was just recently released:
[https://github.com/Gnucash/gnucash/blob/maint/NEWS](https://github.com/Gnucash/gnucash/blob/maint/NEWS)

~~~
LVB
Thanks for mentioning this! I was a GC user for quite a while on linux, but
the register rendering (fonts) was so bad on macOS I abandoned it, checking
back for updates every so often. Looks like this is better now.

~~~
rudedogg
FWIW: I just tried the 3.0-1 macOS version and it crashed when trying to
configure/save. The save dialog was non-native and seemed to have some weird
"offset" where clicking the mouse would select a folder/file not under my
cursor, but offset by like 50px.

------
codebook
I am not a freelancer, but as a personal finance tool, I am using YNAB (You
need a budget). I've been using it for many years from desktop app to current
webapp. I highly recommend it to anyone looking for financial app if you are
willing to do some manual work (putting every transaction by yourself).

Budget scheme in YNAB is far different than any other financial tool (personal
area) in my opinion. And it has helped me a lot to keep me stable financially.

The price ($60 for desktop app, which no longer available, and $7/month) would
be big barrier for new comer, though. It is worth to subscribe :)

~~~
staplers

      if you are willing to do some manual work (putting every transaction by yourself)
    

So it won't track your bank transactions automatically? If I have to enter
transactions manually what's the point of the software? I could do this on
paper..

~~~
codebook
It does support track the bank transactions. but I don't recommend it, since
by entering transactions, you will realize how much you'd spend in your budget
to the category.

You could do it on paper. and carry it in your pocket all the way. There's no
difference in terms of managing transactions. But you could be easily loose
the track of your budget in my opinion. YNAB helps you to keep remind the
budget. That is the key for me to keep using YNAB.

~~~
was_boring
I don't use YNAB, but instead a homegrown budgeting site for my family, and
always recommend entering everything yourself.

The bank account scrapping can take a few days for a transaction to clear, so
you never know what your actual spending looks like for that day/week. And,
like you said, it forces you to at least recognize spending.

------
jjeaff
Wow, I had no idea this existed. It is sorely needed. Excited to try it out.

There are so many options over the years that either end up abandoned,
(Microsoft money), or bought and abandoned or destroyed by Intuit.

~~~
Noumenon72
I'm still using Microsoft Money sunset edition to this day. The perfect
product with graphs, no annual fees, autocomplete, and all your data safely
offline.

------
jonathanstrange
I know it can deal with currencies, but does anyone know how well it fares
with requirements of non-US countries? What accounting system does it use?

Is it suitable for a small business in a European country, where (I presume)
the accounting/IRS and tax system requirements are more stringent?

I'm interested in using it in Portugal but AFAIK small businesses and
freelancers here use different, commercial local software.

~~~
INTPenis
I'm using it in Sweden and GnuCash already has a BAS-12 account template built
in. It's pretty much complete and there is no reason to require BAS-17.

I recently started using it so I actually have one unanswered question. Was
going to connect to their IRC to find out.

The num column seems to be manual and I'm not sure if it's supposed to be a
globally unique value or just a sequence for each transaction (verification)
you make.

Sorry if I'm talking out of my ass but I don't know the correct business
english to use in these circumstances.

~~~
vq
I'm using it in Sweden as well. I wrote a Python script to populate the
accounts from a list of accounts I received from my auditor/tax consultant, as
such I don't know exactly what flavour of BAS it is.

I use a letter prefix for my transaction sequence numbers and GnuCash doesn't
seem to understand it or put any value in it at all. This is definitely a weak
point in my eyes and I'd love to have GnuCash support categories for
transactions and strict sequence numbers.

~~~
gntech
Is it possible you could share that script? :) It would be interesting to see
how it is done

~~~
vq
Sure.

It's a bit of a hack and I can't recommend anyone to actually use it. It
probably contains a number of assumptions that only holds true for the SIE-
files I've had to handle.

[https://erq.se/sie/import_sie.py](https://erq.se/sie/import_sie.py)
[https://erq.se/sie/sie.py](https://erq.se/sie/sie.py)
[https://erq.se/sie/export_sie.py](https://erq.se/sie/export_sie.py)

------
zertrin
It does require commitment to keep track of the transactions regularly, but
ultimately gnucash is really a great help for me as well.

I don't keep a detailed track of every petty cash expenses (just input an
adjustment for the "cash" asset account each month based on what is left in my
wallet), but based on the monthly bank statements most of the expenses are
already covered anyway.

------
akeck
I just want thank the GnuCash devs for their hard work over the years. It’s
helped me get insights into my personal finances and helped me learn double-
entry book keeping.

------
jcoffland
> Honestly, it’s not as bad as it seems. For example if I grab some milk, I
> just drop the $1.99 in under the Food account shortly after I get home.

Who just buys milk? I usually buy 10 to 40 things at the grocery store. This
means I have to keep my receipt, enter each line item and figure out the per
item sales tax. And if I forget once, it's all screwed up.

Do most people track each item or do you make one entry for the whole grocery
run? What do you do if you fail to enter something? How about failing to enter
two or more things during a time period? When and how do you reconcile?

~~~
nickjj
When you live within walking distance from a grocery store and enjoy walking
then picking up 1 or 2 items isn't uncommon.

But you do bring up a good point. When it comes to larger food / supply runs,
I just put in the whole receipt as 1 entry. GnuCash has a "description" field
for metadata. I usually just put in the store's name along with the receipt
ID.

Correcting a failure / mistake is easy because GnuCash lets you create, edit
or delete entries from any date. If you forgot to put something in from 3
months ago but caught it on your bank statement later, you just plop in a new
transaction with 3 months ago's date and it'll auto-adjust everything.

~~~
vanderZwan
Does it keep track of edits?

~~~
nickjj
Not that I'm aware of. If you edit a previous transaction it will override it,
so it's not technically an always "move forward" transaction log.

I've never had it become a problem tho. I've made a few ninja edits over time
and things line up.

------
clircle
GnuCash is wonderful! I have since switched to ledger-cli (via Emacs ledger-
mode) but I gotta thank GnuCash for getting me into the good habit of tracking
all my finances with precision detail.

------
watsocd
I have been using it for a couple of years now after refusing to pay QB Online
$40+ per month.

The GUI needs some work but it is functional. Navigation to find things is not
always easy for daily tasks. I have not looked at the recently released V3.0
yet.

I even looked into helping with the programming by adding a report that I
wanted but the tools they used seemed very complicated to me.

Although it does not connect directly to your bank, you can download and bulk
import transactions.

However, I continue to use the software.

------
ozim
I ended up making my own setup instead of GnuCash because I tried it and it
feels like wearing one size too small shoes. My finances is also something I
can work as hobby without PMs on my head and keep myself motivated to work on
it for years (now three or four). If you want to have side project doing your
own finances is nice choice.

------
Delmania
Something that's not specifically mentioned is that, as far as I can tell, the
author is a single freelance developer. Most people don't need a bookkeeping
system, a simple budget application is enough to handle personal finances.
It's been a while, but the last time I looked, GnuCash's budget system wasn't
fully thought out.

The other aspect to this is that as the situation starts to become more
complicated, doing it yourself stops making sense. Adding in children, a
house, employees, etc, increases the chances of making a mistake and then
having to go through an audit, which is expensive and time consuming. It's a
better strategy to find tax accountant (local) and work with him to make sure
the IRS has no need to investigate you.

~~~
jldugger
Honestly, all personal budget systems I've tried are crap.

I use two systems:

1\. Annual budget spreadsheet. A simple high level of what my planned income
is and what my planned expenditures / investments are. If there's anything
fundamentally wrong about my plans, it's caught here.

2\. GNUCash for transaction history plus 90 days of forward looking planned
transactions. If there's a projected account shortfall, I can rebalance
accounts, and determine whether this is a temporary cash flow problem or if I
need to adjust my annual budget.

This setup works fairly well for me, though a tax accountant will still be
useful in navigating things like what is and isn't a deductible expense, what
documentation is required, and how to adjust your future plans to become more
tax efficient.

~~~
Delmania
I found YNAB to align the most with how I think about budgeting. Zero-dollar,
category based that only focuses on the amount of money you have now and not
to worry about cash forecasting. However, your description sounds like you
need a bit more of an accounting and budget application than a strict budget.

------
Cerium
I've been using GnuCash for a couple years now. It works well once you set it
up and get a feel for its interface. It has the features I need for my small
side business. I would recommend it.

~~~
INTPenis
Hey might I ask you about the num column in the BAS account template?

Are you supposed to keep that globally unique or just for each verification
you log? Because if it's only a local sequence for each verification you make
then there's bound to be overlap between account views.

And if it's globally unique then I'd like GnuCash to automatically increment
it.

~~~
enticeing
I don't know about the BAS account template, but my accounts have the num
column as well. I thought it was used for ordering transactions that occur on
the same date. Personally, I just stopped using it because it rarely matters
for me the order of multiple transactions in the same day.

Looking at this page on gnucash.org now (1), it's referred to as just
"optional Num (such as a check number)". Hope that helps.

[1] [http://gnucash.org/docs/v2.4/C/gnucash-guide/txns-
registers1...](http://gnucash.org/docs/v2.4/C/gnucash-guide/txns-
registers1.html)

------
mcguire
I've been using GnuCash for nearly two decades (and one of these days I'll
need to figure out how to archive previous years' data, although it hasn't
really been a problem so far).

" _You can even get it to work well across devices if you use tools like Drop
Box. I don’t do this, but I’ve heard of others doing this without issues.
That’s because GnuCash creates a single database file that can be easily
backed up and sync’d across devices._ "

This is actually one of the things I rely on. I haven't done it as much
lately, but running unison
([https://www.cis.upenn.edu/~bcpierce/unison/](https://www.cis.upenn.edu/~bcpierce/unison/))
with my VPS before and after I run GnuCash let me use the latter on whichever
computer I had handy. There have occasionally been version conflicts, but
unison's much worse about that than GnuCash.

One other feature that recently broke is updating the market value of the
stocks I have. Yahoo Finance finally killed off the service and I haven't
found a really suitable replacement.

~~~
budhajeewa
Re: Archiving Previous Years

I setup a new `.gnucash` file for each year, by making a copy of previous
year's file, and emptying it of all records. I then review the accounts I've
created in it, and remove anything that won't be necessary for the new year.
Finally, I bring forward balances from assets and liabilities, and enter them
as Opening Balances.

------
RobertRoberts
Does anyone have a good experience working with accountants using GnuCash?

My accountant got me using Quickbooks years ago, and I he does my books from
my QB file. This is such an easy way to work. I really love the idea of
GnuCash, and I've tried it out a couple of times, but I really don't want to
have to find another accountant just because of a software change.

------
irundebian
After several years of using GnuCash as a poor student to control my money I
moved to kmymoney. It was really fun to generate graphs/reports to get an
overview over my expenses, but it later annoyed me to manually export data
from my bank accounts and import it to Gnucash manually and assigning expense
categories to all bookings. After trying to connect my accounts via HBCI/FinTS
to automate importing transactions with aqbanking, I received certificate
errors. This led to me to just switch the software instead of going into
debugging hell.

Kmymoney uses aqbanking too, but didn't lead me to certificate errors. I hope
Kmymoney is as good as Gnucash in generating graphs and reports. I just
couldn't see Gnucash anymore and wanted to start from the beginning.

------
lifeisstillgood
It has always struck me that the data on our spending is electronically
_there_ but is impossible / painfully impractical to obtain.

The European Payment Services Directive 2 (PSD2) is supposed to allow
(authorised) third parties to get to our bank data (ie Apple or mint or some
OSS friendly service) - it is of course woefully late being supported

But even that is only half the story - each time i take a paper receipt from a
store I think "why can't you email that to me - or NFC it up to my phone which
is in my hand, or encode the data in three or four QR codes on the receipt"

We are surrounded by data that is trapped and yearning to be free.

------
quintin
I’ve been a fan of GnuCash, especially double accounting and multi-currency.
But the lack of having an online version limited me. I couldn’t share
anything. My CPA couldn’t take a look at it etc.

Advice there?

~~~
kozziollek
There is self-hosted PHP app named Firefly III [1] that supports double-entry
bookkeeping system. If by "sharing" you mean "logging on your account at
different computer/phone" then it should work. There are user accounts, but
only to use same installation without sharing data.

[1] [https://firefly-iii.org/](https://firefly-iii.org/)

Disclaimer: I'm just a happy user, who reported some issues and pull-requests.

~~~
quintin
This deserves more attention. Thanks for Firefly.

------
vanderZwan
So I recently started looking into this kind of software, and among the OSS
options, I found GnuCash, HomeBank and Money Manager EX. Does anyone have
experience with the other two options and an opinion on how they compare in
practice?

[http://homebank.free.fr/en/index.php](http://homebank.free.fr/en/index.php)

[https://www.moneymanagerex.org/](https://www.moneymanagerex.org/)

------
billfruit
In India I find the android app Walnut very useful.Instead of interfacing with
different banks to get transaction data, it mines your SMS to know about
transactions, and builds up a ledger automatically.It generates quite
informative reports as well. While GNUcash is a good tool, I think it would be
far more convenient if it were a web app or at least a phone app; if it was
so, one could use it on the go while traveling for example.

------
ryanmarsh
Unless you enjoy doing your books this is no way to run a business. Hire a
bookkeeper and a CPA and use a popular SaaS tool like Xero.

Doing your own books is one way to get burned out on being an entrepreneur.
Please don’t do this to yourself. Outsource and delegate. Your mental health
(and the compliance risk) aren’t worth it.

~~~
rbcgerard
While I take your point, I often see people who don't really understand
accounting avoid the topic entirely by fully outsourcing the preparation of
their financial statements. This often leads to disaster because I've noticed
that if you're not really on top of your outsourced service provider, they get
sloppy/lazy and make lots of mistakes.

~~~
ryanmarsh
Get good providers. Biz 101.

------
djhaskin987
My wife and I use it so that we aren't forced to put our financial data online
with some cloud service.

------
londons_explore
GnuCash seems to be about 15 years behind the times when it comes to
accounting software...

It _should_ hook up to my bank account. It _should_ take photos of my
receipts, credit card statements and bank statements and automatically OCR
them to add data. It _should_ automatically calculate my taxes for a specific
country, and file tax reports with local, state and federal government
agencies online, and it _should_ highlight things I might have missed to
reduce my tax burden given my specific situation. It _should_ compare my
expenses with a typical person to highlight areas I might be able to make
savings. It _should_ have a mobile app which works even when offline and syncs
later. It _should_ have auto backups to the cloud or remote storage.

If I just wanted a way to add up my expenses by category, I would have used a
spreadsheet.

~~~
vxNsr
Can you recommend a piece of software that does all of the above?

Can't be 15 years behind the times when there is no better alternative.

~~~
watsocd
In my opinion, QuickBooks Online will do almost everything painlessly.

The only thing you will complain about is the price if you are a small or one
person company.

If I all of a sudden had a couple of employees, I may go back to QB Online.
Then the $50 would not mean as much in the grand scheme of things.

~~~
vxNsr
Does this scan receipts with OCR and connect them to the credit card charges?

I just want something that will do a better job at giving me a good look at my
budget than mint but that doesn't require a serious time investment. I willing
to pay with money instead of time.

------
hippich
When we just moved to the USA, I was really concerned with keeping costs down.
GNUCash totally helped to keep spending under control. It covered my fulltime
job + occasional freelancing accounting perfectly.

------
pcunite
I switched to using a spreadsheet. From that I create a P&L report. I
understand the cash flow much better vs. when I was using a software package.
I do miss seeing graphs and such, however.

~~~
ryanmarsh
Cash flow forecasting is one area where all the bookkeeping systems fall down.

~~~
ropeadopepope
I don't think most single owner businesses do cash flow forecasting. Do you?

~~~
ryanmarsh
If cash is inconsistent they should. I have expenses (travel) that can vary
quite a bit. So yes.

------
mrleinad
My personal setup for tracking finances (not taxes, just expenses and incomes)
is:

\- Expense IQ (Android)

\- Google Sheets

I'll take a look into this one, maybe I can replace GSheets with it, or get
something extra from it.

~~~
icebraining
The big advantage is double-entry. It's generally much easier to avoid missing
something in one of the accounts.

[https://www.youtube.com/watch?v=aqAaScYVeRQ](https://www.youtube.com/watch?v=aqAaScYVeRQ)

------
Bizarro
Is it safe to download an installer from sourceforge these days?

~~~
MattSteelblade
Sourceforge has been under new management for approximately 2 years. They
revamped the site and cleaned it up. Since this change, I have seen no reason
not to use it.

------
mihai_maruseac
On tax day here in US. To keep in mind for next year.

------
neboysa
How come that no one mentions xero? Been using it quite some time and I was
sure it was one of the best solutions out there. Thoughts?

------
mongol
I know nothing about GnuCash. How internationalized is it? Taxes are different
everywhere.

