Skip to main content
/

Batch Import via CSV

Batch Import lets you upload hundreds of emission entries at once from a spreadsheet, saving time when migrating historical data or collecting data from multiple sites.


Download the template

Always start from the official template to avoid column header mismatches:

  1. Go to Carbon Tracking → Import → Download Template
  2. Choose the template variant:
    • Scope 1 & 2 — energy, fuel, refrigerants
    • Scope 3 — travel, supply chain, waste
    • Full — all categories in one sheet, with an extra scope column

Open the file in Excel or Google Sheets.


Column reference

Column Required Description
category E.g. electricity, natural_gas, flights
subcategory Specific activity code (see factor library)
quantity Numeric activity amount
unit Must match the subcategory's allowed units
period_start ISO 8601 date: YYYY-MM-DD
period_end ISO 8601 date — must be ≥ period_start
location ✅ if multi-site Site or cost centre name (must exist in Settings)
reference Optional Invoice / meter-read reference
notes Optional Free text, max 500 chars
factor_code Optional Pin to a specific emission factor code

Do not rename or reorder the header row.


Uploading the file

  1. Go to Carbon Tracking → Import → Upload CSV
  2. Drag your file onto the upload area, or click Browse
  3. Choose the Reporting period the file relates to (used for any rows with blank period columns)
  4. Click Validate

Validation

AlchemOS Positive validates every row before importing. You will see a table with:

  • Valid rows (green) — ready to import
  • Warning rows (amber) — will import but check the flag
  • Error rows (red) — will not import; correction required

Common errors:

Error Fix
Unknown subcategory Use the factor library to find the correct code
Unit mismatch Confirm the unit is valid for the subcategory
Invalid date Use YYYY-MM-DD format
Duplicate entry A matching entry already exists for the same period
Unknown location Create the location in Settings first

Download the validation report to see all errors annotated in a new spreadsheet.


Completing the import

Once all red-row errors are resolved, click Import N rows. A progress bar shows the import status.

On completion you see:

  • Total rows imported
  • Rows skipped (warnings that were opted out)
  • Link to the new entries in the entry list

Imported entries are created in Draft state by default. Bulk-submit them for approval from the entry list.


Re-importing / updating existing entries

The importer checks for duplicate entries using (subcategory, period_start, period_end, location). If a match is found:

  • Skip (default) — leave the existing entry unchanged
  • Update — overwrite quantity and notes (creates a revision record)
  • Create duplicate — useful when the same activity appears at multiple cost centres

Select your preferred strategy in the import settings before clicking Import.


Limits

Limit Value
Max file size 25 MB
Max rows per file 50,000
Max imports per day 10 (Standard plan), 100 (Pro), unlimited (Enterprise)

Was this page helpful?