Small Metrics
Sign up

Import Transactions (CSV)

How to migrate your data from other tracking systems to Small Metrics

Attention: Role Access The data import feature is available only to users with the Admin role. If you are a regular Member, this feature will not be accessible to you.

Where to find it

  1. Open the app and navigate to the Money section.
  2. Select the desired space on the main screen (e.g., “Family”).
  3. In the upper right corner, tap the Settings (gear) icon.
  4. In the opened menu, just below the Members section, tap the Import Data button (accompanied by a file upload icon).

What is it for

The import feature allows you to quickly and safely transfer your income and expense history from other banking apps, Excel spreadsheets, or legacy financial tracking systems directly into Small Metrics.

The import is built on a safe “Dry-Run” (preview) pattern with a “Best-effort” logic. The system first reads your file without altering the database and shows you the validation results. If there are a few errors in a file with thousands of rows, the system will not block the entire process. Instead, it will offer to import only the valid transactions, ignoring the incorrect ones.

User need

Switching to a new financial tracking app is often accompanied by the fear of losing accumulated historical data. Users need to avoid manually entering hundreds of old transactions and quickly migrate their entire Cash Flow into the new system. This allows for seamless budget management and immediate access to deep analytics based on historical data.

Steps and file requirements

The file must strictly be in .csv (Comma-Separated Values) format with a comma (,) separator and UTF-8 encoding.

1. Download template

Tap the Download Template (CSV) button. The reference file smallmetrics_money_import.csv with the correct headers will be downloaded.

The file must strictly contain the following columns:

  • Date (Required): Strictly in ISO format YYYY-MM-DD (e.g., 2026-03-01).
  • Type (Required): The direction of the payment, strictly income or expense. The backend reads this field case-insensitively.
  • Category (Column required): Text name. If the category is unknown to the system, it will be created automatically. If you leave the cell empty, the transaction will be assigned to the system category Uncategorized.
  • Amount (Required): A decimal number using a dot (.). The amount must strictly be positive. Negative values (e.g., -500) will cause an error. The direction of the money is determined solely by the Type column.
  • Currency (Required): A 3-letter ISO currency code (e.g., EUR, USD).
  • Comment (Optional): A text comment of any length.

2. Prepare your file

Cross-check your data with the guidelines on the screen and ensure it meets the formatting rules.

3. Upload ready file

Tap the upload area to select your file, or simply drag and drop it into this field.

4. Data validation

After uploading the file, the system will display the validation results:

  • Existing categories: A list of existing categories where the data will be placed.
  • New categories to create: A list of categories the system will create automatically.
  • A table with examples of the first 5 successfully parsed transactions.
  • If the file contains errors, a red block will appear at the bottom saying File contains errors. Please fix them and try again, detailing the errors row by row.

5. Save data

If the file contains at least one valid transaction, the Save button will be unlocked. Tap it to complete the import. If there were errors in the file, a red warning will appear right above the button, stating that only successful rows will be imported.

Expected result

  • If you try to upload a non-CSV file, a toast notification will appear: Please select a .csv file.
  • After successfully tapping the Save button, a green notification will appear: Data imported successfully!.
  • The import screen will close automatically, and the transaction lists and analytics on the main screen will update in the background.
  • All new categories will be automatically created and ready to use.