# Import transactions from a CSV

Import transactions from Monarch, Apple Card, Rocket Money or any CSV file in Settings → Data Import, and undo an import within 7 days.

## Which apps and files you can import

Treasury can import transactions from **Monarch**, **Apple Card**, **Rocket Money** and **CSV Import**, which reads a CSV file from any app. **YNAB**, **Copilot** and **Origin** show as Coming soon.

![The import source picker with Monarch, Apple Card, Rocket Money and CSV Import, and YNAB, Copilot and Origin marked Coming soon](https://treasury.sh/help/import-sources.webp)

Each file must be a CSV of 10 MB or less. Monarch and CSV Import also take an optional account balances file, which builds your net worth history.

## Start and finish an import

1. In **Settings → Data Import**, select **New Import**. If you haven't imported before, select **Import data**.
2. Under **Where are you importing from?**, choose the app.
3. For Monarch, connect the banks you still use first, then select **Continue to import**.
4. Add your transactions CSV, and your balances CSV if you have one. Select **Continue**.
5. Under **Confirm your categories**, tap each category to add to Treasury, or select **Add all**. Then select **Continue with** the number of new categories, or **Continue without adding**.
6. Check **Ready to import?** and select **Start import**. Stay on the page until it finishes, usually within a minute.

Nothing is saved until you select **Start import**. An import you left in the last hour stays in **Settings → Data Import**: select its row to carry on. After that, it moves to **Show archived**. During setup, **Skip for now** on the upload step drops the import and carries on.

Imported categories that match one of yours by name use your category. Transactions in categories you didn't add arrive uncategorized, and Treasury keeps categorizing them in the background.

> [!WARNING]
> Your bank brings in up to 2 years of history when you connect it. If your bank already synced those months, the import only skips transactions that match exactly, so check the overlapping months in **Transactions** for doubles.

## Export from Monarch, Apple Card or Rocket Money

- **Monarch:** in Monarch, go to **Settings → Data** and download your transactions and balances exports.
- **Apple Card:** on iPhone, open Wallet, tap Apple Card, then **Card Balance**. Under Statements, tap **Export Transactions**, pick dates and choose CSV.
- **Rocket Money:** on rocketmoney.com, go to **Transactions → Export**. Open the emailed download link on a computer, because it doesn't work on a phone.

## Use your own CSV file

Choose **CSV Import** to bring in a file from any app or spreadsheet. On the upload step, download the **Transactions** or **Balances** template. During setup, select **CSV templates** to find them.

The transactions file needs a **Date** and an **Amount** column. Dates can be YYYY-MM-DD or MM/DD/YYYY. Money you spent is positive and money you received is negative.

Optional columns are **Description**, **Category**, **Account**, **Notes** and **Currency**. Leave **Account** blank to put everything in one account. Treasury doesn't import tags, so a **Tags** column is ignored.

The optional balances file needs **Date**, **Account** and **Balance**. Use the same account names as the transactions file. Balances you have are positive and balances you owe are negative.

## Where imported transactions go

Treasury puts each imported account's transactions into one matching Treasury account, connected or manual. With last digits it matches a similar name, and without them the exact name. If there's no single match, it creates a new manual account.

An import never changes any account's balance. Accounts it creates start with no balance, so Net Worth counts them as zero. [Update each balance](https://treasury.sh/help/manual-accounts#balance) in **Settings → Manual Accounts**.

A balances file adds one net worth entry per day. Days that already have an entry in your net worth history keep it. Balances only count for accounts that also have transactions in the file, so an account such as a house with no transactions is left out.

## What happens to duplicates

Treasury refuses a file you already imported, unless you undid or deleted that import. It shows "This file was already uploaded on another import".

For a different file whose dates overlap, Treasury skips a row when the same account already has a posted transaction that matches it exactly. The date, amount, currency, description, merchant, statement text and notes must all match. The summary shows how many duplicates were skipped.

So a transaction you renamed, added a note to or moved to Trash comes back when you import it again. Identical rows within one file are all kept, because they can be separate purchases. A transaction your bank synced rarely matches exactly, so importing after your bank has synced can leave doubles.

When a connected bank syncs, Treasury skips a new bank transaction that looks like an imported one in the same account. It needs the same amount, a similar merchant and a date within a day. An import made before you connect that bank goes into a new manual account, so the bank's own transactions arrive as doubles. Merging the accounts doesn't remove them. For the order that avoids this, see [Switch in this order](https://treasury.sh/help/switch-from-monarch#order).

## Undo an import

In **Settings → Data Import**, find the import and select **Undo** (the curved arrow). The import's summary page has **Undo** too. Undo is available for 7 days after an import finishes.

> [!CAUTION]
> **Undo** deletes the import's data as soon as you select it, with no confirmation. Changes you made to those transactions are lost.

Undo deletes every transaction and net worth entry the import added. It also removes the accounts and categories it created, unless other transactions use them. Your other data is unchanged.

Undoing after a connected bank has synced can leave gaps. Where the bank skipped a transaction because the import had it, undo deletes the only copy, and the bank won't send it again. See [If you see doubles after switching](https://treasury.sh/help/switch-from-monarch#check).

After 7 days an import can't be undone and moves to **Show archived**, with undone imports. **Delete from history**, in the import's **⋯** menu, only hides the import from the list. Its transactions stay.

If an import fails, Treasury removes anything it started adding, and you can try again with the same files.

---

Open Data Import in Treasury: https://app.treasury.sh/settings/data-import

Page: https://treasury.sh/help/import-csv

Last checked against the app: 2026-11-04
