Importing data from YNAB4 - specific problems to deal with

wisemanja's Avatar


06 Jul, 2021 07:23 PM

I spent the last week importing data from my YNAB4 file into a new Moneydance file. I've come across some unavoidable problems that need to be manually dealt with. I am listing them here for others who may not be aware.

1) YNAB4 handles transfers between assets and/or liabilities in a fashion that is structurally incorrect. When importing to Moneydance this results in loss of information.

A transaction is simply a distribution of funds across a series of accounts (assets & liabilities) and categories (expenses & incomes) that when all added up totals to $0. Most programs are set up to handle this within an account by entering the date, who the funds are for/from, and then the categories and/or accounts that the rest of the funds are disbursed to. Although YNAB4 does this for categories, it DOES NOT do it for accounts (I.e., when you are transferring funds). Instead it records the transfer account in the "who the funds are for/from" field and leaves the category field EMPTY. When all those transactions are brought across in the QIF files they do not have anything in their category fields so the values stored in Moneydance end up being automatically split and expensed to the unnamed category.

Although both ends of the transaction show up in the 2 accounts, they are not linked. Instead they are both EXPENSED to the unnamed category. So you have to go in on one of them, manually add the dispersement to the other account, and then delete the split to the unnamed category that is there. After that, you must go to the other account (i.e., the one on the other side of the transfer) and delete the now redundant transaction in that register. Do this for every transfer that was recorded in your original records.

2) When importing the QIF files, Moneydance automatically creates categories for transactions that don't already exist in the system. Unfortunately it doesn't always get it right. In my case I had 130 categories and of them over a third of them had been incorrectly set up as Income when they should have been Expense. This fowls up many reports (e.g. cash flow is income vs. expense, etc.).

There are likely a couple ways to fix this, none of which I've tried yet. The first one would be to manually create all of your categories LETTER PERFECT prior to importing your QIF files. Another is after importing the QIF files, going through and creating duplicate categories for each of the ones with incorrect category types only with slightly different names. Then Moneydance has a find and replace function that apparently can be used to move all the transactions from the wrong categories to the new ones that you've just created.

3) When importing split transactions from YNAB4, occasionally all values for each of the split transaction will be $0. This problem appears to be with YNAB4 as those incorrect $0 values all exist in the QIF files that were exported from there. When imported to Moneydance, Moneydance adds a new split to the unnamed category and puts the balance there. The only fix is to go back into YNAB4 to examine the original split values and manually copy them over into Moneydance.

4) It doesn't appear possible to import budget amounts from the budget.csv file that YNAB4 exports (someone please correct me if I'm wrong here). When importing .csv files it appears that Moneydance is assuming that you are importing transactions only. I suspect that you have to manually enter all the current month's budget values into Moneydance since unlike YNAB4, it appears that you cannot go back to previous months and enter the values that you had back then.

I haven't found any other issues yet. I discovered that viewing the unnamed category register is a GREAT way to find the zeroed out splits and transfers that are messed up, but it can be really tedious. Moneydance is nice in that it insists on all transactions actually balancing. You can't just enter a transaction in an account to change the balance without expensing it to something.

  1. 1 Posted by dwg on 06 Jul, 2021 09:28 PM

    dwg's Avatar

    I'm a fellow user.

    Budgets were never supported by the QIF format which is the primary format used to move data between financial program.

    CSV files are not ideal for handling transactional data since they can be somewhat free form, however with a consistently structured CSV files we can import transaction data into Non-investment accounts and it generally works pretty well. CSV is also supported for price data like exchange rates and stock prices. For budget data there is no universally accepted structure for.

    Your transfer problem sounds like it is not being written to the QIF file as per the spec. QIF defines both categories and transfers are handled in the same way with a subtle difference, transfers have square brackets around the account name.

    For creating categories you are correct that it creates them from the transactions, but there is no indication in the transaction as to whether a category is an income or expense item, the software mostly gets it right but some things can upset it - a category name, especially a top level name being both an Income and an Expense item - will throw it off for one thing.

    For split transaction there is a structute that has to exist in the QIF file for the transaction for those to work correctly.

Reply to this discussion

Internal reply

Formatting help / Preview (switch to plain text) No formatting (switch to Markdown)

Attaching KB article:


Attached Files

You can attach files up to 10MB

If you don't have an account yet, we need to confirm you're human and not a machine trying to post spam.

Keyboard shortcuts


? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac