This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new!


KMyMoney: Coming along, but still not there

By Brian Jones on November 13, 2006 (8:00:00 AM)

Share    Print    Comments   

KMyMoney is KDE's personal financial management program. If you don't have complex needs and a lot of history to import, KMyMoney lets you set up accounts, enter transactions, and generate reports easily, and other features are doable with some help from the generous amounts of documentation. However, KMyMoney is not a good choice for small business owners, who need more functionality than it can provide.

Beyond basic checking and savings accounts, KMyMoney also lets you set up investment accounts, and it will update and track your investments using online data sources such as Yahoo! It can also help you prepare for your taxes by offering the option of marking expense and income categories for inclusion in tax reporting. Setting up accounts representing loans, and tracking assets such as your house or car are also fairly simple in KMyMoney.

With all of the flexibility in the types of things you can record and track, I was surprised to find that there was no built-in wizardry to help end users build and maintain a budget. It would be useful to have a tool that will let you enter the amounts you've budgeted for in a given category, and then be able to generate a report that compares budget vs. actual expenditures for some time range.

In addition, while I did not see any way to set up check printing, there is a scheduling feature that will let you set up recurring events such as bills or balance transfers. It would be great if the developers combined scheduling and check printing in a future release, so that checks could be printed automatically when it's time for them to go out.

I installed KMyMoney on Ubuntu Dapper and Edgy, and Fedora Core 5. I did the bulk of my testing on Ubuntu Edgy. I used prebuilt binary packages for installation because that's what an end user would use. Source code is available for KMyMoney, but with automated tools like yum, APT, and Synaptic, there's no need to compile from source.

The user experience

To get started with KMyMoney, I decided to download a QIF file from my bank, import it, categorize the transactions, and start generating reports. Sad to report, it's not that easy.

I was able to define an institution and a new account without any problems. KMyMoney imported my QIF file without issue. There were more than 500 transactions, and I was pleased to see that it imported fairly quickly. KMyMoney also supports importing from OFX sources, as well as GNUCash files.

Next, I clicked on the Ledger icon so I could see the transactions that I would have to categorize. Yikes! The entire list of transactions was blinking and highlighted in red. Isn't it enough to just color the transactions? Did we learn nothing from the rampant abuse of the 'blink' tag on the Internet? Lose the blinking. It's unnecessary, and it's incredibly annoying.

The display does, however, provide a clue as to what the user's next step should be. The blinking is an indication that the transactions are not categorized. OK, I thought, I'll sort by the Payee column, and then all of the car payments will be next to each other. I'll be able to select all of them and assign them all to the car payment category. But I was wrong -- as it turns out, you have to categorize everything one transaction at a time.

Not being able to categorize transactions en masse is a huge downfall, because it keeps new users from easily moving to the application. Since I have better things to do than individually categorize 500 transactions, I decided to open the application back up and start entering just enough transactions to test the application.

Starting from scratch, I had to create a new data file. This is a step that should be abstracted out of the user interface; users starting from scratch should simply be greeted with a wizard to get them going. The notion of a "data file" is a technical concept that defies the otherwise inviting look and feel of the interface.

Once you've created your data file, the working pane presents you with the opportunity to return to the KMyMoney welcome page. This is the only option. Seems logical that the user should be given a visual cue in this pane to take the next logical step of creating an account or defining an institution. Instead, these options are available only from the toolbar near the top of the window, or from the menus.

Once you've created an account, you can start entering transactions. Getting to the Ledger interface is intuitive enough, and from there it's simple to find the right buttons to enter a new transaction. But even here I was bitten. I wanted to enter a transaction for a check written to "Roofers R Us." I entered the payee's name, and when I went to move to the "Category" text field, up popped a dialog asking if I wanted to define "Roofers R Us" as a new payee. Well, it's not often that one makes regularly scheduled payments to a roofer, so I declined on the grounds that this was a one-time payment. No good. My "Payee" field was cleared of any content, and there I was left to start over. A better approach would be to have that dialog inform users that KMyMoney can only record transactions to defined payees. In other words, if there's only one way to get through the task I'm trying to perform, don't ask me a question that is equivalent to "do you want to get through this task?" and then give me the option to say "no." Fortunately, clicking on "Don't ask me again" and choosing "Yes" in this dialog will auto-define the payees going forward.


Once I had defined transactions covering different categories over a period of time, I began test the reporting capabilities of the application. I'm sad to report that, while the reports are not useless, they are completely text-only, dry, accountant-like reports. Most other comparative tools at least have simple pie-chart reports to let you know where your money is being spent.

Those shortcomings aside, KMyMoney does provide a default set of reports covering taxes, income vs. expense, net worth, investment holdings, and simple transaction reports. It also allows you some flexibility in customizing reports, and even defining your own reports.


The entire Investments portion of the application uses a navigation paradigm that is inconsistent with just about every other part of the application. If I don't ever have to right-click to get a menu that helps me get a task completed, then don't add that requirement arbitrarily. I had to refer to the handbook to figure out how to add a stock transaction. A user who has already entered several transactions, altered their ledger, added and manipulated categories, etc., should not find himself completely lost in another area that looks just like every other transaction-oriented part of the application.

Once you realize that you have to right-click to get things done in the investment area of the application, it's quick work to define stocks and then enter purchase information. Make sure you do it in that order -- you can't define a stock purchase transaction unless you've defined the stock first. Once that's all done, to its credit, KMyMoney will let you update the information, and generally presents a nice interface to keep up with stock purchases.

I did run into an annoying problem in this interface: after defining my first stock, I was able to enter a stock purchase for that stock. I then went and added another stock, and returned to the ledger interface to add a transaction, but the stock was not available in the drop-down list. I added another, and again, only the first stock was available for use in any transaction. Closing KMyMoney and opening it up again fixed the problem.

On the positive side

There are a couple of things I really like about KMyMoney. For one thing, the basic framework used for the interface is good. Users can get a lot done without tons of clicking and switching contexts. It also doesn't force double-entry accounting down your throat the way GNUCash does. I, and many others, find the normal, standard, single entry, "I paid this to this guy" interface a lot more intuitive. Also, there is quite a good bit of documentation in the form of the KMyMoney Handbook, accessible in KMyMoney's Help menu.

However, after giving it a fair trial, I found KMyMoney to be missing so many features, and have so many interface quirks, that I cannot recommend it to the average home user. The downsides, though sometimes small, are glaring. KMyMoney could overcome these things in a relatively short amount of time. To be fair, although I didn't find KMyMoney a suitable replacement for a commercial program like Quicken, I don't find any other FLOSS application suitable either.

Share    Print    Comments   


on KMyMoney: Coming along, but still not there

Note: Comments are owned by the poster. We are not responsible for their content.

Borrowing the open source way.

Posted by: Anonymous Coward on November 14, 2006 02:33 AM
Maybe they should borrow Ledger for that missing functionality?


good review

Posted by: Anonymous Coward on November 14, 2006 05:04 AM
I'm giving it a spin for my personal finances, and I'm butting heads with some of the same interface annoyances you mentioned in the review. I love the appearance and organization- it's clean and easy to use. But setting things up still has some rough edges.

I'd like to find an alternative to Moneydance.(Don't suggest gnucash- I've tried it several times. Don't like it, and I do understand double-entry.) Moneydance is proprietary, which doesn't bother me too much, and it's very powerful and flexible. But the Linux interface is just plain ugly. This goes beyond aesthetics- it affects readability and comprehension. As I understand it, its appearance is limited by its Java underpinnings, so there is small hope for improvement.

KMyMoney may never support check printing. I asked about it once on the mailing list, and got the impression that non-US devs are amused by the very notion. Apparently us US persons are the only ones who cling to such an archaic form of funds transfer.


Re:good review

Posted by: Anonymous Coward on November 15, 2006 06:23 AM
If you're looking for a good alternative to Moneydance, try jGnash ( It's also a Java app, but has several themes, and the appearance is quite tolerable. It's a true double-entry system like GnuCash, but I find it much easier to use. The thing I like about it (aside from being open source) is that the file format is XML. This means that I don't have to worry about my data being locked into some proprietary binary format (which happened to me with Quicken).


Re:good review

Posted by: Anonymous Coward on November 15, 2006 10:02 AM
Just thought I'd point out (since the article was about kmymoney) that kmymoneys file format is nothing more then a compressed XML file. Change the file extension to<nobr> <wbr></nobr>.gz and you can then un-zip it to get the XML file. Kmymoney can even work directly with the un-compressed XML if you like.
I think there is also work being done to allow you to use a database as an option for data storage if you prefer. I don't know the status of that though.


Good news and bad news.

Posted by: Anonymous Coward on November 14, 2006 06:09 AM
The good news is that most (though not all) of the issues you mention in your article have already been fixed in the development version (no more blinking, mass categorization, pretty charts in reports) or at least work has been started on them (a new user wizard and budgeting). Some other pretty useful new features have been added as well.

The bad news is that these changes are available only in the development version which should not be used for production (It changes a lot and therefore is prone to breaks)

It is exciting to see what's coming anyway.


Re:Good news and bad news.

Posted by: Anonymous Coward on November 14, 2006 07:16 AM
A lot of good progress has been made on KMYMoney. It has the potential to be the quicken-killer- quicken has all sorts of bells and whistles that are useless to most folks, plus they try to force upgrades by dirty tricks like discontinuing QIF support, and monkeying with OFX direct import to only support the latest quicken versions. Intuit is not your friend.


KMyMoney -- great for me

Posted by: Anonymous Coward on November 15, 2006 10:04 AM
I've been using KMyMoney for about a year, and have found it much better than Quicken for my purposes -- I keep track of checking, savings, and credit card accounts with it. (I do not need a program that goes out to the internet for me.)
I have not used it for investments, so have no comments there.
In regard to the subject of KMyMoney asking if it should create a payee, I have found this extremely useful. I would advise against checking "Yes, and don't ask again" for this reason: When you make mistakes, or have more than one person entering transactions, you can end up (easily) with 3 or 4 variations of the same vendor name. You might care, but your wife or girlfriend probably doesn't. (That's how our Quicken accounts looked, and I would spend lots of time cleaning it up to make accurate reports.)

    With KMM, if you type "Litmus" as a payee instead of "Linus" for those monthly donations, KMM astutely points out that you don't have a payee named "Litmus." It fills in the correct name from a dropdown as you type each letter, saving the reorg later. Adding a payee, you get the question. After that, it's helping you clean up your mistakes. TimZ



Posted by: Administrator on November 14, 2006 11:53 PM
Hey this sound like a cool program. I have tried so many financial orgnizer programs already but still couldn't quite get what i am looking for. Maybe this one would do the trick. It the KMyMoney already out in Asia? Hope to hear a reply from anyone. Thank you.


This story has been archived. Comments can no longer be posted.

Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya