How to Use Rotki for Local Crypto Accounting: Import, Reconciliation and Backup

 / 
2

The local crypto accounting workflow on Rotki can be summed up in 3 steps: import all your data first, correct mismatched entries in History Events, then secure your work via database backup or Premium sync. It is not a tool that auto-generates reports once you connect APIs: imports only give you raw data, and reconciliation is the step that takes most of your time.

OKX Exchange
A leading global cryptocurrency platform,suitable for both beginners and experienced traders.
New user benefit: 20% off trading fees upon registration!!

Import: Prioritize APIs, Use CSV to Fill Gaps

Rotki supports 2 types of data sources: exchange APIs and CSV files. The rule of thumb is simple: use read-only APIs whenever possible, and only use CSV for cases where APIs are not available (unsupported exchanges, closed accounts, or you only have old export files).

You can add API connections under API Keys → Exchanges, with built-in support for major platforms like Binance and BitMEX. When creating API keys, only enable read permissions, never grant trading or withdrawal access. One Binance limit to note: its Convert history only returns 30 days of data per request, so full deep history sync will be slow. You also need to manually input trading pairs you use (such as BTCUSDT, ETHUSDT) into Rotki so it knows which pairs to pull data for.

CSV import is handled in the Import Data menu, select the matching exchange importer then upload your file. Binance CSV can import more content than its API: trades, deposits/withdrawals, small asset conversions to BNB, ETH 2.0 staking and rewards, Launchpool interest, and POS savings deposits and redemptions are all supported. But some data in native Binance CSV format cannot be parsed by Rotki, you will get a warning during import. This warning does not always mean you made a mistake, it usually comes from missing information in the source file.

If the exchange you use does not have a dedicated importer in Rotki, you can use Custom Import with the universal CSV format, and map your columns to Rotki's fields. One common pitfall here: Rotki identifies assets via unique asset identifiers instead of ticker symbols, since tickers are not unique. ERC-20 token identifiers follow the CAIP-19 standard, while other assets may use symbols or unique strings. If you enter "USDT" in the universal import when Rotki expects a contract address in the specified on-chain format, the import will fail or assign the asset to the wrong entry.

Reconciliation: Categorize Issues in History Events

After import is complete, open History Events. You do not need to browse every single entry manually: check the top Actions Center, which aggregates all issues that need processing by category.

The main issue categories you will encounter include: Unmatched asset movements (exchange withdrawal with no corresponding on-chain receipt, or deposit with no corresponding on-chain send), Unmatched bridge transactions (one side of a cross-chain bridge transfer has no matching entry), Duplicate events (events you manually edited overlap with newly decoded raw events), Undecoded transactions (transactions are found but not converted to readable events).

Unmatched asset movements are the most common reconciliation task. They usually appear for these reasons: related on-chain addresses are not added to Rotki, on-chain events have not finished syncing, large gaps in amount or time caused automatic matching to fail, or the exchange itself did not provide enough information (like missing tx hash). You have 3 ways to handle them: click Trigger automatic matching to let Rotki auto-match by asset, amount and time window; click Find Match on a single entry to manually search and adjust time range and amount tolerance; if the movement has no corresponding on-chain record at all (like fiat deposits/withdrawals), click Ignore to move it to the ignore section. The Ignore All Fiat button can process all fiat flows at once to save you from manual one-by-one edits.

One easy-to-misjudge case: transfers between your own wallets, if both addresses are added to Rotki, will be matched as internal transfers and will not be marked as taxable disposals. But if you only add one of the two addresses, the other side will show as unmatched, and you may mistakenly think you need to process it manually. Add all related addresses first, then check the Actions Center, this will eliminate most false positive issues.

Backup: Your Local Database Is the Core Asset to Secure

Rotki is a local-first tool, all your data is stored in an encrypted database on your local device, and will never leave your machine by default. That means the responsibility for backups falls on you. The official Rotki data directory guide has one clear recommendation: back up your data directory frequently, as it holds all your account data and historical price cache.

But manually copying the data directory has one precondition: you must fully close Rotki first. The SQLite database may have unwritten WAL/journal files when the app is running, directly copying files while Rotki is active may capture inconsistent states, leading to unopenable or silently corrupted backups. The safer method is to use the in-app backup function, which creates a consistent snapshot even while the app is running.

The data directory location differs by operating system:

  • Linux:~/.local/share/rotki/data/
  • macOS:~/Library/Application Support/rotki/data (hidden by default)
  • Windows:%LOCALAPPDATA%/rotki/data

If you have a Premium subscription, you can enable Allow data sync with rotki Server for encrypted cloud backups. But note 2 limitations: sync only covers your user database, not the global database (global.db, which stores asset data, address book and historical prices), you need to migrate the global database manually. Also, never run Rotki on multiple devices at the same time: the latest logged-in device will overwrite cloud data, and simultaneous operation will cause data consistency issues.

Recommended Step-by-Step Workflow For New Users

If you are new to Rotki, follow this order: after installation, create a local account and set a strong password (lost passwords cannot be recovered) → add read-only exchange API keys in API Keys, remember to fill in trading pairs for Binance → use CSV to fill in any missing historical data → open History Events, first check Unmatched and Duplicate entries in Actions Center, handle most of them with auto-matching, then process the remaining entries manually → generate a Profit/Loss Report to verify all numbers look correct → close Rotki, manually copy the data directory to make a baseline backup, or enable Premium sync.

You do not need to clear all entries in the Actions Center to finish reconciliation (some categories require Premium access, some fiat flows never have corresponding on-chain records). The correct standard is: spot-check a few key transactions, confirm the amount, asset and time match your exchange records, and you can trace every number in your PnL report to its source. Rotki lets you edit events and add manual entries: if auto-import results are wrong, edit them until they are correct, then run a backup.

OKX Exchange
A leading global cryptocurrency platform,suitable for both beginners and experienced traders.
New user benefit: 20% off trading fees upon registration!!

Reference Materials

  1. Rotki·Binance support, page update date not marked; verification date: 2026-10-19.
  2. Rotki·BitMEX support, page update date not marked; verification date: 2026-10-19.
  3. Rotki·Import CSV, page update date not marked; verification date: 2026-10-19.
  4. Rotki·Import Data, page update date not marked; verification date: 2026-10-19.
  5. Rotki·Resolving history event issues, page update date not marked; verification date: 2026-10-19.
  6. Rotki·Local-first crypto accounting, updated 2026-06; verification date: 2026-10-19.
  7. Rotki·Data directory, page update date not marked; verification date: 2026-10-19.
  8. Rotki·Accounts & Sync, page update date not marked; verification date: 2026-10-19.
  9. Rotki·Usage Guides, page update date not marked; verification date: 2026-10-19.
  10. Rotki·Quick Start Guide, page update date not marked; verification date: 2026-10-19.