Guides
Moving from YNAB
If you have budgeted with YNAB, much will feel familiar: every unit of money gets a job, and ready-to-allocate is the money still waiting for one. Duration grew out of years of budgeting this way — it is not a replacement so much as a slightly different shape, built around a couple of ideas YNAB does not lean on. If YNAB serves you well, that is a good place to be; this guide is for people who have decided to try the other shape, and want to know exactly what the move involves.
This page is the mechanics. For the argument — why a second axis, and what problem it solves that YNAB structurally cannot — read what YNAB gets right, and the one thing it structurally can’t model. You do not need it to follow this guide.
Two practical notes before you start. Duration is invite-only while it is being built; anyone can register interest and invitations go out on a rolling basis. And a Book — Duration’s word for one set of books — is budgeted in a single accounting currency, chosen when you create it and fixed thereafter. Amounts below are written as plain numbers; read them in whatever currency your Book keeps.
What carries straight over
Most of your habits need no relearning.
- Giving every unit of money a job. Same discipline, same words. Money arrives, you allocate it, and what you have not yet allocated sits in ready-to-allocate — YNAB’s ready-to-assign under a different name.
- Categories become buckets. A bucket is the thing you allocate to and spend from. If your category list is in good shape, most of it transfers one-for-one.
- Reconciling against a statement. Every account is reconciled against what the bank says, and the account’s balance is computed from its postings rather than typed in.
- Overspending is a signal, not a failure. A bucket can go negative, and so can ready-to-allocate. Nothing is hidden and nothing scolds you.
- Targets become goals. A YNAB target and a Duration goal both put a number and a date on a bucket. Goals are versioned rather than overwritten, so changing one keeps the record of what you used to intend, and you can see the change rather than losing it.
What is genuinely new
Two ideas, and everything else in this guide follows from them.
The horizon. Every bucket sits at a horizon — a statement of when you will need the money, which is also a statement of where it ought to sit. Money needed within the year belongs in cash; money needed in seven years does not have to. Accounts bind to horizons, so the question of which account holds what is part of the model rather than something you carry in your head.
Allocated versus funded. Allocated is what you have promised; funded is what your accounts actually hold. In YNAB these are the same number by construction. In Duration they can differ, and the difference is drift — the signal that your intent and your accounts have come apart, and the one number the tool most wants you to look at. A sweep is the transfer that closes it.
The full picture is in the two-axis model, and every term has an entry in the glossary.
What you can bring across, and what you rebuild
Be prepared for this: your transactions can come across; your budget cannot.
Transactions. YNAB can export your register as CSV, and Duration imports CSV account activity, learning the column layout the first time it sees a file so later imports of the same shape are recognised automatically. Import per account, and see import and reconcile for how matching works.
The budget itself — categories, assigned amounts, targets — is rebuilt by hand. This is not an oversight or a missing feature. Your YNAB budget expresses one axis; Duration’s expresses two, and there is no rule that can decide which horizon each of your categories belongs at. That judgement is the interesting part of the move and it is genuinely yours. In practice it takes an evening.
We would like to make this easier. YNAB publishes an API, so a more direct import is something we want to build; it does not exist yet, and this guide will say so until it does.
A note on how much history to bring. You do not need years of it. Duration computes every balance from postings, so a single opening balance posting per account, dated the day you start, gives you a correct and complete picture from that day forward. Import history if you want the record; skip it if you would rather start clean. Neither choice makes anything wrong later.
Bringing your balances and budget across
A new Book arrives with a starter shape already in place — four horizons, a debit, savings and investment account skeleton, and a handful of starter buckets — so you are editing something rather than facing a blank page. Rename and reshape it to match your life; delete what you do not need.
Then, in this order:
- Create your accounts and give each one an opening balance, dated the day you are starting from. Duration keeps the effective date of a balance separate from when you typed it in, so a balance entered on Tuesday can correctly be a fact about Monday. Connect a bank feed where you can, so activity arrives on its own from here on; CSV import covers anything a feed cannot reach.
- Set up your horizons, and bind each account to one. This is the step with no YNAB equivalent and it is worth slowing down for: it is where you decide that the buffer account funds out-of-pocket and the investment account funds the long term.
- Rebuild your categories as buckets, each at the horizon its money actually belongs to.
- Allocate. Give each bucket what YNAB currently says it holds. What is left lands in ready-to-allocate.
- Set your goals — open each bucket from the Buckets list and set its target there — and give each one a start date that matches when it really began; see dates are worth a second thought, just below.
Read the credit-card and excluded-category sections below before step 1 — both change what you enter.
Dates are worth a second thought
This is the one part of the move where the tool cannot help you by inference, and where a small slip is easy to make and easy to miss. It is worth five minutes.
Duration keeps two dates apart for everything it records: the effective date, when something was true, and the moment you typed it in. That separation is what makes a transition possible at all — on one afternoon you enter facts belonging to a dozen different days, and each lands where it belongs. But it also means the dates are yours to get right, and a transition is exactly the situation that tempts you to date everything “today”.
Opening balances belong on the day you start. That is what they are for, and there is nothing to think about.
Allocations you make on transition day are trickier. When you seed your buckets with what YNAB says they hold, you are recording a fact about the day you moved — so dating them that day is correct. What is not correct is assuming your goals began that day too.
A goal has its own start date, and for a contribution goal it decides what counts. A goal that says put in 30 000 by 31 October measures what you have put in, not what is sitting in the bucket — so an expense you were saving for does not make the goal demand the money back. The other side of that is that it must count from somewhere, and it counts from the goal’s start date onward. Allocations made before the goal began are not progress toward it. That is deliberate: without it, a goal declared on a bucket you have been feeding for years would read as complete the moment you created it.
Put the two together and the trap is visible. Seed a bucket on the 30th, declare its goal a week later without changing the date, and the goal starts from zero — showing far more left to find than your own arithmetic says, with the seeded money nowhere in the figure.
So: date the goal from when it actually began. If you seeded the bucket on the 30th and the goal is really about money you started setting aside then, give the goal a start date on or before the 30th. In the goal form it is Counting from, under Advanced.
If you have already got it wrong, it is fixable. Open the bucket, choose Edit goal, keep it on Correct this goal, and set an earlier date under Advanced — the goal’s start moves back with it, and the form will tell you it is about to do that and name both dates. Contributions from the earlier date then count, and the figures settle immediately.
Two limits worth knowing:
- A start date can move earlier, never later. That direction is on purpose: nothing you do to a goal can quietly take away progress it has already counted. If you need to start the count over, delete the goal and declare a new one.
- Do not back-date further than you mean to. On a bucket with a long history, an early start date sweeps in contributions that were never for this goal, and the goal reads as much further along than it is. Aim at the date the goal genuinely began, not at the beginning of the record.
None of this applies to a balance-target goal — have 20 000 by June, or keep 5 000 topped up. Those measure what the bucket holds right now, so there is no history to count and no start date to get wrong.
Bringing an invested account across
If you have been keeping long-term money in a brokerage, this is the part of the move that will feel different, and the part that most repays getting right.
In YNAB an investment account is a tracking account: outside the budget, so moving money into it reads as spending and empties the category it came from. The workarounds are well known — force the brokerage on-budget as an unlinked cash account, hold an Investing buffer category against the volatile part, sweep excess cash in monthly by hand, and route the reconcile adjustment into the buffer rather than letting it look like income. If you have run some version of that, you have been maintaining by hand what Duration holds directly. (The essay makes that case properly; here is what to actually do.)
- Bring the account in as an ordinary account, with its current value as the opening balance. There is no on-budget/tracking distinction to choose between: an invested account is an account whose balance moves for reasons other than your spending, and that is modelled rather than worked around.
- Bind it to the horizon it funds — the long-term one, usually. Its buckets can then be allocated against it like any other.
- Do not recreate your buffer category. The job it was doing is drift, computed continuously from allocated minus funded. A category holding the same number by hand would be a second copy of a figure Duration already keeps, and the two would disagree the first time you forgot to update one.
- One account can back several buckets. A new car, a roof and a trip in three years can all be allocated inside a single holding, each with its own balance and goal, without splitting the account. This is the thing YNAB has no way to express.
- Market movement arrives at reconcile. When the account’s reported balance differs from what its recorded cash flows predict, the difference is held as M — unattributed market movement — until you decide which buckets it belongs to. It is not income, and Duration will not treat it as such.
Credit cards, and money you already owe
This is the difference most worth understanding, because the two tools handle a carried card balance in genuinely different ways — and if you do not know why, Duration’s number can look like a mistake. It is not.
(Amounts below are plain numbers — read them in whichever currency your Book keeps.)
How YNAB thinks about it. In YNAB a credit card is a budget account paired with a Credit Card Payment category. When you spend 500 on the card for, say, groceries, YNAB makes two moves at once: it takes 500 out of your Groceries category, and it moves 500 into the Payment category, set aside to pay the bill later. Your ready-to-assign does not change — the money you had budgeted for groceries is simply relabelled “waiting to pay the card.” It is an elegant design, and it works beautifully when you start from a zero balance and always budget before you spend. Debt you carried in from before you started budgeting is treated as a separate matter: YNAB leaves it sitting on the card and lets you pay it down deliberately, over time, rather than making this month’s budget look broken because of last year’s spending. That is a kind, sensible choice, and it is one reason YNAB feels so calm to use.
How Duration thinks about it. In Duration, balances are always derived from your accounts, and a credit card is simply a liability — an account with a negative balance, because you owe money on it. Your allocatable pool is everything you hold minus what you owe. So a carried card balance of, say, 18 000 reduces the money you can allocate from the very first moment, with no separate Payment category in between. Spending on the card makes the liability more negative, exactly as spending cash makes a cash account smaller; paying the card is a transfer — cash moves from your current account to the card — and leaves your net worth unchanged, because one balance falls as the other rises.
Why your “ready” number will look lower. Put those side by side and the arithmetic follows: if you carry a card balance, YNAB’s ready-to-assign includes cash that is really destined for the card, because YNAB has not asked you to earmark it yet. Duration earmarks it for you, automatically, by subtracting the debt off the top. So on the day you move across, Duration will show less to allocate than YNAB did — by roughly the part of the card balance you had not already reserved.
Two things make this easier to sit with:
- It is a one-time step down, not a monthly drain. Duration is not deducting the debt again each month. It is a single re-baselining of your starting level. From there, both approaches move the same way — up by income, down by what you allocate — and the gap only ever shrinks as you pay the card down.
- It is the honest figure. Every amount Duration shows as allocatable is one you could deploy without borrowing. The lower number is the feature doing its job, not an error to route around.
A tempting shortcut that will bite you. It can be tempting to “fix” the lower number by leaving the card’s opening balance at zero — acting as if the debt is not there. It is worth resisting. It hides a debt that is still real, and it breaks two things downstream: reconciliation (your statement says −18 000 while Duration says 0, and that account never matches again) and payments (paying the card from a zero start pushes its balance positive, as though the card were holding your money). Enter the true balance; the honest picture is the one that keeps working.
The monthly rhythm — and why Duration does not reset
YNAB is built around the month. New income arrives as money to assign, you distribute it toward this month’s targets, category balances roll forward, and next month you sit down and do it again. That monthly cadence is part of the method: it pulls you back to the budget regularly, and for a lot of people the fresh start each month is exactly the ritual that keeps them engaged.
Duration does not have a month boundary at its centre. You allocate money to buckets by purpose and horizon, and it stays allocated until you decide to change it — there is no monthly reset and no re-assigning the same standing amounts every four weeks. The reasoning is the horizon axis: a lot of what Duration holds is money for the medium and long term — a boat fund, a roof someday, retirement — and for money like that a monthly re-budgeting cadence is mostly noise. So instead of a fixed monthly ritual, Duration asks for your attention on events: when income lands and needs allocating, when cash has drifted from your intent and a sweep is due, when market movement is worth attributing, or when a goal needs a top-up.
What that leaves you with is a trade. You lose the enforced monthly check-in — if you leaned on YNAB’s month rollover to make yourself re-engage, Duration will not nudge you the same way, and that suits some people far less than others. In return you lose the busywork of re-deciding stable, long-horizon money every month, and you keep a structure that persists until reality gives you a real reason to touch it.
Categories you would rather not track
Most budgets carry a category or two you do not really want to budget — a pass-through for transfers between your own accounts, or money you move around but never truly spend. In Duration the clean way to handle these is simply not to create a bucket for them, and to mark the matching transactions as Excluded so they stay on the record but sit out of drift and every other signal.
One thing to expect when you do this: dropping a category shifts your ready-to-allocate by whatever that category was holding. If it held a positive balance, that money lands back in ready-to-allocate when you leave it out. If it was overspent — a negative balance — then leaving it out nudges the rest of your buckets to sum a little higher instead. Neither is a problem; it just means the totals will not line up category-for-category with YNAB, and now you know why.
Money other people owe you
However you tracked reimbursements in YNAB — a dedicated category, a negative balance you carried, or a note to yourself — Duration models it as a receivable: money you have laid out and expect back. It is not a bucket and not a spend. It sits apart from your allocated money, because it is neither available to allocate nor gone.
Two shapes come up, and they need different tools. A joint account you both fund belongs in its own Household Book, where it reconciles against its own statement and its shared sinking funds can be allocated and swept like any others. Costs you front from your own account are receivables on your personal book, settled up now and then. Tracking split expenses covers both properly.
Differences you will notice
A handful of smaller things that YNAB users ask about, answered plainly.
Reports. Duration keeps exactly one, and it is not a spending report. It shows, per horizon and over time, three lines: what you allocated, what you contributed in principal, and what the accounts were funded with. The gap between funded and contributions is that horizon’s market return; the gap between allocated and funded is its drift. There is no spend-by-category report, by design — spending history informs decisions where it is relevant, rather than being a destination you visit. If you came to YNAB’s reports to answer “can I afford this?”, the answer here is a different tool: see can I afford it?.
Age of Money. There is no equivalent, and none is planned. Age of Money is a retrospective measure of buffer, and Duration answers the same underlying worry forward instead: expected income against committed pace gives free to commit, which tells you whether a new commitment fits before you make it rather than how you did last month.
On a phone. Duration is comfortable on a phone for reading and light categorising — checking where things stand, clearing a few imported rows. The heavier work of setting up horizons, allocating and reconciling is built for a desk, and deliberately so.
Sharing with a partner. Duration does not work like a shared YNAB login where two people edit one budget. Joint money lives in its own Household Book alongside your personal one, and costs you front for each other are receivables that settle between you. Each of you keeps your own picture; the shared part is explicit rather than merged.
Where the tool points your attention
This one is more about emphasis than mechanics, so treat it as a matter of taste. Both tools record every transaction — Duration imports, reconciles and keeps a full journal, so nothing here is about tracking less. The difference is where each tool puts your attention by default. YNAB’s home is the monthly category view — assigned against spent, this month, line by line — which naturally invites close attention to each category as the weeks pass, and plenty of people genuinely enjoy that closeness. Duration’s home is the structure: your horizons, your buckets, and the goals you have set on them, with the tool speaking up mainly when reality drifts from the plan.
So if you like watching a target fill and letting steady categories run quietly in between, Duration leans that way. If you like the granular, hands-on monthly pass over every category, that is precisely what YNAB is built for. It is a difference of where your eyes rest, not of what either tool can record.
Checking your move added up
Once you have brought everything across, one check tells you the structure is sound. In Duration the total across all buckets and the total across all accounts are two views of the same money, so they must be equal to the last decimal. If they match, your allocation is internally consistent — whatever else differs from YNAB is a matter of the two models, not a slip.
Comparing Duration’s ready-to-allocate to YNAB’s ready-to-assign is a good sanity check, but expect them not to match exactly, for two honest reasons you have now met:
- Categories you chose not to bring over. Whatever each one was holding lands back in ready-to-allocate (see above).
- The credit-card treatment. Duration has already subtracted a carried card balance that YNAB was still showing as assignable.
Account for those two and the numbers reconcile. If they do not, that is worth a closer look — but in practice this is exactly where the last small differences tend to hide.
Where to go next
- The argument behind the model: what YNAB gets right, and the one thing it structurally can’t model.
- The full model, unhurried: the two-axis model and the glossary.
- The everyday flows, starting with recording income and allocating.
Last reviewed: August 2026.