best way to model individual+joint expenses in Gnucash?

James Ralston ralston at
Thu May 14 15:53:14 EDT 2015

Hi all,

I'm a 20+ year Quicken user who's converting to Gnucash.  Since this
is a chance to "hit the reset button" and do things
better/differently, I'm looking for "best practices" advice on how to
handle individual versus joint accounts.

The TL;DR version: if you're trying to track both individual and
shared expenses, with the goal of ensuring that shared expenses are
paid for equally, is it better to use separate Gnucash files to do it?
Or does it make more sense to use a single Gnucash file, and use
sub-accounts to track individual versus shared expenses?

The long version:

I married a few years ago.  My wife uses a pencil and her checkbook to
track her finances.  I use personal finance software to track both my
finances, and our joint finances.  We agreed that we would maintain
individual accounts, but contribute equally to joint expenses.  So, we
opened a joint Checking account to pay for joint liabilities, and
signed up for joint credit cards.  However, we both occasionally use
cash to pay for joint expenses—my wife much more so than me.

So, I had to solve a problem: how to ensure my joint spending and her
joint spending stays roughly the same?

With Quicken, I approached this by adding the new joint accounts to my
existing Quicken file.  In order to track joint expense categories for
reporting purposes (e.g., "how much did we spend on dining out last
month?", I created additional "Joint" expense categories:
Joint:Dining, Joint::Entertainment, et. al.  (In Quicken, expense
categories are the equivalent of Gnucash sub-accounts under Expenses,
and income categories are the equivalent of Gnucash sub-accounts under

I then created a "wife" cash account.  When my wife contributes to the
joint Checking account, I record it as a transfer from the wife
account to the joint Checking account.  When she pays for a joint
expense with cash, I record that transaction in the wife account.
Calculating her joint spending is easy: it's the running total of all
transactions in the "wife" account.  For me, my joint spending is the
sum of all "Joint" categories in my individual accounts, plus the sum
of all transfers into the joint Checking account.

This gives us the ability to make sure our joint spending stays
roughly the same.  (I haven't been able to find a way to account for
non-joint spending on the joint credit cards, but we work around that
by agreeing to use the joint credit cards strictly for joint

For Gnucash, I can see at least two different ways of modeling this:

1) Use separate files for my accounts, joint accounts, and my wife's

This is arguably the simplest approach, but it does have the
disadvantage that every transaction involving both individual and
joint accounts would need to be entered separately in both files.

For example, if I pay $20 cash (which I had previously withdrawn from
my individual Checking account) to pick up dinner for both of us on
the way home from work, what seems to make the most sense is to enter
that in my file, in my Cash account as a $20 expense to
Expenses:Joint.  In the joint file, in the Cash account, I enter a $20
income (the money I "transferred" from my individual file to the joint
file), and then a $20 expense for the Dining expense account.

2) Use a single file for our combined individual and joint accounts.

I think this would be doable, but with Gnucash's double-entry system,
it's going to be more complicated than what I'm currently doing in

I skimmed the archives for this list before posting, and I saw that
some people took the approach of splitting joint liability accounts
into sub-accounts based on who spent the money (individual versus
joint).  But I'm not sure that approach would be more or less
complicated than "porting" my existing Quicken model into Gnucash.

What do most people do in this situation?  Is there an obviously
"best" solution?

Is there another solution I'm not seeing?

Thanks in advance for any advice...

More information about the gnucash-user mailing list