Cake Budget
how-to beginner 5 minutes

Import Transactions From a CSV

Bring a CSV or TSV from your bank or another budgeting app into a manual account: how Cake reads the columns, how duplicates are handled, what the balance question means, and how to undo an import.

Last updated: September 25, 2026

A manual account is one you keep current yourself. Typing every transaction is one way to do that. Importing a file your bank already gives you is the other. This guide covers the second.

What You’ll Accomplish

By the end of this guide, you’ll know how to:

  • Import a CSV or TSV into a manual account and check every row before it is saved
  • Fix the column mapping when Cake reads a file differently than you expect
  • Tell which rows Cake already has and which look like duplicates
  • Answer the balance question at the end
  • Undo an import

Prerequisites

  • ✅ A manual account. If you do not have one, see Manual Accounts and Transactions.
  • ✅ A CSV or TSV export. Every online bank has one, usually under the transactions or statements page. The register export from YNAB works too.

Import is for manual accounts only. An account that syncs from your bank already receives every transaction, so importing into it would create duplicates.

Step 1: Choose the file

  1. Go to Settings, then Accounts, and choose Import on the manual account. Or go to Transactions and choose Import beside Add Transaction; if you have more than one manual account, pick which one.
  2. Choose Choose a CSV or TSV file and pick the export.

Files can be up to 5 MB and 10,000 rows. The file is read in your browser and sent to Cake as text; Cake does not keep the file.

Step 2: Check how the file was read

Cake works out which columns hold the date, the description, and the amount, and shows its reading in one line, for example “Date: Date, Description: Description, Amount: Amount, one signed column”. If that matches the file, move on.

If something is wrong, or if Cake could not settle a detail on its own, choose Adjust columns (it opens by itself when a decision is needed). You can set:

  • Columns. Which column is the date, the description, an optional memo, an optional category, and the amount.
  • Amount. Whether the file has one signed column, where a negative number is money out, or two columns for money out and money in. If deposits are showing as spending, turn on Flip money in and money out.
  • Dates. Only asked when a file like 3/4/2026 could mean March 4 or April 3. Month first is the US convention; day first is common in the UK, Canada, and Europe.
  • File. Whether the first row is a header, and the separator (comma, semicolon, tab, or pipe). Cake detects both, so this rarely needs a change.

Cake remembers these settings for the account. The next file with the same header needs no setup.

A Category column is used as is: a category with that name is reused, or created if it does not exist. Slices are never assigned by an import.

Step 3: Pick the rows

Every row is listed with a checkbox. Rows Cake already has are unchecked and marked Already imported. A row with the same amount, in the same direction, within a week of one already in the account is unchecked and marked Possible duplicate; check it if it really is a separate transaction. Everything else is checked.

Use Only rows since to leave out anything before a date, for example the day you set the account’s balance.

Rows Cake could not read, such as a line with no amount or a date it could not parse, are listed with the row number and are not imported.

Choose Import N transactions.

Step 4: Answer the balance question

Importing never changes the account’s balance. Safe to Spend comes from that balance, not from adding up transactions, so it should match what your bank shows now. Cake asks:

  • Yes, keep the balance. Choose this when you set the balance recently. It already reflects the transactions you just imported.
  • No, update it. Choose this when the balance was set a while ago and these transactions have happened since. Enter the balance your bank shows today.

The total of the imported rows is shown as a hint. It is not applied on its own.

What an import does and does not do

An import loads history. Compared with a transaction you type in by hand:

  • Rules do not run on imported rows. To sort them, open the rule on the Rules page and choose Apply to past. See How Rules Automation Works.
  • Paycheck schedules do not match an imported deposit. To fund your slices from one, open the deposit and use Set aside. See How to Set Aside Money from a Deposit.
  • No slice changes and no balance changes happen during the import.

A transaction you add by hand on the Transactions page does run rules and can match a paycheck schedule, so if you enter your paycheck yourself, the schedule funds your slices as usual.

Undo an import

Each import is one batch. To take one back, open Import on the account again: the previous imports are listed at the top with an Undo button, and the last step of an import has Undo this import. Cake asks you to confirm, then removes every transaction the import added. Any category or note you changed on those transactions is lost with them, and the balance you confirmed stays as it is.

Undo is refused while an imported transaction is assigned to a slice or has been set aside. Unassign it, or undo the set aside, and try again.

After an undo, the same file imports as new, so fixing a wrong column mapping is undo, adjust, import.

Files that work

  • Bank exports. CSV or TSV, with a header row or without, comma or semicolon separated, US or European number formats (1,234.56 and 1.234,56), amounts in parentheses or with a trailing minus, and DR or CR markers. Accented names in older Windows encodings are read correctly.
  • YNAB. The register file inside YNAB’s export (Plan or Budget, then Export) imports as transactions, with the Payee, Memo, Category, Outflow, and Inflow columns recognized. Categories and slice balances do not come across; only the transactions do.
  • Other apps. Anything that exports a date, a description, and an amount per row.

Troubleshooting

Every row shows as money out (or money in). The amount layout is wrong. Under Adjust columns, switch between one signed column and two columns, or turn on Flip.

Dates are a month off. The file uses day-first dates. Under Adjust columns, choose Day first.

The description column is wrong. Some banks put a transaction type in the first column. Under Adjust columns, point Description at the right one; Cake remembers the fix for that account.

Most rows are unchecked. You have imported this range before. Use Only rows since, or leave them unchecked; nothing is imported twice.

14-Day Trial No CC required