[Update on Sept. 5, 2009] After evaluating the alternatives, I discovered a way to automatically download the transactions and price quotes and feed them to Money after Microsoft pulls the plug. See follow-up posts Replacing Microsoft Money, Part 5: OFX Scripts and Download Price Quotes to Microsoft Money After Microsoft Pulls the Plug.
GnuCash is a free, open source application. It works on Linux, Mac, and Windows. I tried the version 2.3.4 on Windows.
I can see GnuCash is designed by people with a solid accounting background. It started in 1997 as X-Accountant. In GnuCash, everything is an account and every transaction is a transfer. That’s how an accountant sees things.
To an accountant, there is no fundamental difference between a checking account and salary. The checking account is a balance sheet account. Salary is an income statement account. But they are both accounts. When you put your paycheck into your checking account, you transfer a balance from salary to the checking account — debit checking account, credit salary.
That’s exactly how it’s represented in GnuCash.
Figure 1: Assets, Liabilities, Income, and Expenses are all Accounts
This flexible approach works great for an accountant, but it can be confusing for others. I would rather refer to accounts with my name as “accounts,” income and expenses as “categories,” and investments in my brokerage account as “securities.”
When it gets to investment, it can be even more confusing. Every stock you buy in a brokerage account is also an “account” with a parent account. You can create child accounts within the brokerage account for whatever tracking purpose: stocks vs. mutual funds, domestic vs. international, large cap vs. small cap, serious investment vs. play money, short-term investments vs. long-term investments, etc.
Figure 2: Accounts nest n-levels deep
If you have a good grasp of double entry accounting concepts, GnuCash is great. The infinite level of nesting lets you create your accounts structure however you like. To a novice, there can be a steep learning curve, until you understand why everything is an account and why every transaction is a transfer between two accounts.
On Windows, GnuCash takes a long time to start because it has to load the gnome libraries. After it starts, it runs pretty fast.
Here’s a summary of what GnuCash can do against my requirements:
|Reconcile account balances
|Track against budget
|Allocate loan payments automatically
|Download investment price quotes
|Report Investment portfolio returns
|Report net worth over time
There is no way to set up a loan and have it calculate loan payment principal and interest automatically. GnuCash provides a financial calculator for doing the calculation manually. The user can use the bank’s payment confirmation and enter a split transaction.
I did not see anything that calculates investment returns.
GnuCash also has some business features: customers, vendors, invoices, bills, etc. Because I don’t need these features, I did not test them.
Unless you use the business module, there isn’t a concept of a payee. If you want to see how much you paid AT&T over the last 12 months, you have to run a custom report off the free-text description in the register.
GnuCash can import QIF files. In Microsoft Money, you have to export to a QIF file one account at a time. I didn’t try the import because it’s too tedious with many accounts. It will likely create duplicate entries when there are transfers between accounts in Money. Fixing bad imports can be more time consuming than not importing at all.
If GnuCash were the only application on the market, I would use it. It’s very flexible for a power user. It’s great for a small business. It’s free and open source. Because it’s open source, chances are it will live on. For personal use, however, it’s not as user friendly as I’d like.
I will review Moneydance in my next post.
Say No To Management Fees
If you are paying an advisor a percentage of your assets, you are paying 5-10x too much. Learn how to find an independent advisor, pay for advice, and only the advice.