nuspect
Climate Tech / SustainabilitySWEN

Building an Automated Personal Carbon Footprint Tracking Platform

Existing carbon footprint tools rely on manual input, which leads to poor data quality and low user engagement. SWEN needed a platform capable of pulling behavioral data from diverse, heterogeneous sources and translating it into a unified, scientifically grounded CO₂ calculation — with minimal effort from the user.

All work8 months
THE OUTCOME

What it moved

4
Data sources aggregated
12+
CO₂ calculation categories
<5 min
Onboarding completion time
~85%
Transaction classification accuracy
THE CHALLENGE

Existing carbon footprint tools rely on manual input, which leads to poor data quality and low user engagement. SWEN needed a platform capable of pulling behavioral data from diverse, heterogeneous sources and translating it into a unified, scientifically grounded CO₂ calculation — with minimal effort from the user.

THE SOLUTION

We built a multi-source data aggregation platform combining Open Banking integration, email parsing, geolocation tracking, and structured onboarding — feeding a unified emissions calculation engine that produces a detailed, category-level carbon footprint profile for each user.

The Challenge

Most people have no accurate picture of their personal carbon footprint. The tools that exist today ask users to fill in forms — estimating how often they fly, what they eat, or how much they drive. This approach suffers from recall bias, low completion rates, and a fundamental mismatch: people are asked to self-report the very behaviors they are least aware of.

SWEN was founded on a different premise: that the data needed to calculate an accurate carbon footprint already exists in the digital traces people leave every day — their bank statements, their email receipts, their phone's location history.

The platform needed to:

  • connect to users' financial data through Open Banking without storing raw credentials;
  • parse purchase receipts and booking confirmations from email inboxes;
  • derive transport behavior from geolocation data;
  • collect structured lifestyle context through an onboarding questionnaire;
  • combine all of these into a single, category-level CO₂ profile;
  • present the result in a way that is legible and actionable for non-expert users.

The non-profit nature of the project added further constraints: the architecture had to be lean, privacy-respecting by design, and built to operate at low infrastructure cost.

The Architecture

The platform is structured around a central emissions engine that ingests normalized signals from four independent data adapters, each responsible for a distinct data source.

Open Banking Integration

Financial transaction data is the highest-signal source for consumer carbon footprinting — purchases directly reflect consumption patterns across food, transport, retail, and services.

The integration connects to users' bank accounts via Open Banking APIs, retrieving transaction history without ever handling login credentials. Each transaction is then processed through a classification pipeline that:

  • identifies the merchant category using MCC codes and merchant name matching;
  • maps the spending category to an emissions factor from established CO₂ databases;
  • calculates a per-transaction carbon estimate;
  • aggregates results by category and time period.

Transaction classification operates on a combination of rule-based matching and a lightweight ML model trained on labeled financial data, achieving reliable category assignment across the majority of everyday spending.

Email Parsing

A significant share of consumer activity generates digital receipts — flight bookings, hotel stays, food delivery orders, online shopping. These confirmations contain structured data that is far more precise than a bank transaction alone.

The email parsing module:

  • connects to users' inboxes via OAuth (no password storage);
  • scans for receipts and booking confirmations from known senders;
  • extracts structured fields — item categories, quantities, travel distances, dates;
  • feeds this data into the emissions engine as high-confidence events.

This layer significantly improves accuracy for high-impact categories like air travel and long-distance rail, where a transaction amount alone gives little information about the actual CO₂ footprint.

Geolocation Tracking

Transport is one of the largest contributors to personal carbon footprints, and bank transactions alone cannot distinguish a bus journey from a taxi or a personal car trip.

The geolocation module tracks user movement with consent and derives:

  • transport mode (walking, cycling, car, public transport, flight) using speed and trajectory analysis;
  • distance traveled per mode;
  • estimated CO₂ per journey based on average emissions factors by transport type.

Users can review and correct inferred transport modes where the automatic classification is ambiguous.

Onboarding Questionnaire

Not all lifestyle factors leave a digital trace. Diet, household energy use, and consumption habits are difficult to infer from transactions alone — yet they contribute substantially to a person's footprint.

The onboarding questionnaire collects:

  • dietary patterns (vegan, vegetarian, omnivore, frequency of meat consumption);
  • home energy sources (gas, electric, renewable);
  • household size;
  • property type and rough size;
  • shopping and consumption frequency.

Questionnaire responses seed the user's baseline CO₂ profile, which is then refined over time as behavioral data accumulates from the automated sources.

Emissions Calculation Engine

All four data streams feed into a central calculation engine that maintains a live, category-level carbon footprint for each user.

The engine covers emissions categories including:

  • food and diet;
  • transport (car, public, air, rail);
  • energy and home;
  • shopping and goods;
  • digital services;
  • travel and accommodation.

Emissions factors are sourced from publicly available scientific databases and updated periodically. The engine recalculates the user's profile incrementally as new data arrives, avoiding full reprocessing on each update.

User Dashboard

The consumer-facing interface was designed to make a complex, multi-source calculation accessible and meaningful.

Users see:

  • total monthly and annual CO₂ footprint;
  • breakdown by category with trend lines;
  • comparison against national and global averages;
  • highest-impact activities and suggested reduction actions;
  • historical progress over time.

Special attention was given to avoiding guilt-driven framing — the interface focuses on awareness and actionable insight rather than moral judgement.

Technology Stack

Frontend

  • React
  • TypeScript

Backend

  • Python
  • FastAPI

Data Layer

  • PostgreSQL
  • Redis

Async Processing

  • Celery

Integrations

  • Open Banking API
  • Google Maps API (geolocation)
  • OAuth 2.0 (email access)

Infrastructure

  • Docker
  • AWS

The Outcome

SWEN became a platform where users gain an accurate, automatically updated picture of their carbon footprint without manual data entry — the first time many of them have seen a number they can actually trust.

The multi-source approach resolves the core problem of self-reported carbon tools: data quality. By aggregating behavioral signals that already exist, the platform delivers accuracy that questionnaire-only approaches cannot match.

Key Results

  • Aggregated data from 4 independent behavioral sources into a single CO₂ profile
  • Covered 12+ emissions categories across food, transport, energy, and consumption (estimated)
  • Reduced onboarding time to under 5 minutes while establishing a baseline footprint (estimated)
  • Achieved approximately 85% accuracy in transaction-to-category classification (estimated)
  • Eliminated manual data entry for the majority of footprint calculation inputs

The platform provides a foundation for future features including peer comparison, offset integration, and enterprise or B2B2C distribution — while remaining grounded in its non-profit mission of making carbon awareness accessible and honest.

STACK

What we built it with

ReactTypeScriptPythonFastAPIPostgreSQLCeleryRedisOpen Banking APIGoogle Maps API