Is it possible to schedule transaction in Gnucash, where the amount is not fixed at scheduling time or entered manually each time, but calculated automatically?

For example, automatically transfer 5% of first account's balance to the second account every week.

So basically I just want to write to "Tot Funds In"/"Tot Funds Out" something like (first account balance)*0.05, but I can't find the correct syntax.

  • 1
    This task is similar to depreciation counting. In the docs it is said that there is no way in GnuCash (as of yet) to perform the depreciation scheme calculations automatically. So it means that this is not yet possible? Jan 5, 2022 at 10:50
  • I know you can put "constant" calculations in the scheduled-transaction template (like "10 + 25" instead of just 35), but I don't think there is any way to make a reference to another value in the book.
    – chepner
    Jan 5, 2022 at 21:37

1 Answer 1


The short answer is NO, GnuCash can't do that at present.

There's useful information on Scheduled Transactions in https://wiki.gnucash.org/wiki/Scheduled_Transactions - including examples of performing simple calculations directly in the register, and using variable names in formulae to have GnuCash prompt you for an input value. There's also examples of having more complicated calculations performed in the background with the result returned in the scheduled transaction.

However, under the heading formulas or scripts for periodic savings the Wiki states What it _cannot_ do, however, is sum or obtain the values from existing accounts ... so it would not be able to compute "all expenses in the last month".

I take this to mean that GnuCash cannot retrieve the current balance of a GnuCash account and automatically use that value in a scheduled transaction. You can however, schedule a transaction that will prompt you to retrieve that value and provide it to the calculation.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .