How PollutionProfile works

A lifetime, day by day.

Give it the places you have lived. It rebuilds every day you spent in them, looks up what was in the air, water and ground on each of those days, and screens the total against twenty-three conditions.

Follow the pipeline
Mia 8
Priya 31
Rosa 57
Eleanor 79

The app’s own onboarding characters.

Stage 01

It starts with where you have been.

Not a survey about your neighborhood. An actual list of places with dates attached — the addresses you lived at, the ones you worked or studied at, and how long each one lasted.

Three ways in
Import a location timeline you already have, type places in by hand, or let the app track in the background. Photos can help too — it reads only the timestamp and coordinates, then discards everything else about the image.
A stay has to be a stay
Imported stops under eight hours are dropped, so a layover or a long dinner never becomes a place you lived.
Work and school are separate places
Each carries its own address and its own hours per week, because a desk you occupy forty hours a week is a different exposure than the bed you sleep in.
One required answer
Your personal health history is the only hard gate — the risk engine needs your age. Every other questionnaire adds precision when you fill it in and is simply absent when you do not.

Stage 02

Every place becomes a row of days.

This is the part that makes the rest possible. Your history is expanded into one row per calendar day per place — a lifetime, day by day, before a single pollutant is looked up.

One row per day, per place, for as far back as your history goes.

Home · full day Work or school · hours ÷ 168

0 days placed

Days carry weights, not places
A home you sleep in gets the full day. A workplace is added on top of the same day at its hours ÷ 168, capped so no secondary place can ever swallow a day whole.
Overlaps resolve to the more specific stay
When two records claim the same day, the narrower one wins, so a decade at one address cannot quietly count twice inside a longer one.
A missing number is never invented
A workplace entered without its weekly hours is skipped rather than given an assumed weight. Throughout the pipeline, absent means absent — it never silently becomes zero or average.
Why day-grain matters
Every figure later on is a weighted mean across those days. Moving in June rather than January genuinely changes the arithmetic instead of rounding to a year.

Stage 03

Then each day gets filled in.

Roughly 120 columns are attached to those rows in staged passes — fast ones first so the app is useful immediately, heavier ones behind them. Each column records where its number came from.

One day’s row

Neighborhood indicators census tract

Fine particulate ~1 km² tile

Ground-level ozone wider tile

Airborne toxics census tract

Drinking water your water system

Pesticide application county × local farmland

Contaminated sites 5 km, then 10 km

Land cover and noise fine tile

0 of about 120 columns

Each measure at its own resolution
Fine particulate resolves to a hexagonal tile roughly a square kilometre, stepping outward only if the finest tile is missing. Airborne toxics and neighborhood indicators resolve to your census tract, drinking water to the specific system serving the address, pesticide application to the county and then corrected by how much farmland actually surrounds you.
Contaminated sites by distance
Sites are found within five kilometres, with a second band out to ten, ranked by distance and split into what they released to air versus water.
Modeled and measured are labelled, not blended
Satellite-derived and modeled estimates carry a different source stamp than monitor readings. Recent addresses pull real readings from the nearest station; older ones use the modeled record, and the row says which it used.
Coverage is tracked per row
Each pass sets its own completion flag, so the app can tell the difference between "there is nothing here" and "this has not been looked up yet" — and can show you which.

Stage 04

The screening runs against twenty-three conditions.

Not a wellness score. For each condition, a risk ratio starts at 1.0 and independent factors multiply onto it — your exposures, your family history, your habits, and the things you already do that protect you — carrying their confidence bounds the whole way.

How one condition is assembled

  • Baseline for your age1.00
  • Family history× 1.8
  • Time-weighted airborne exposure× 1.3
  • What you already do× 0.9

Then the excess is what is left after subtracting the baseline — and it is reported with the range its evidence supports, never as a single confident number.

Two questions, kept apart
How much is present, from published reference concentrations. And how unusual that is, from national distributions that always name their comparison group — other census tracts, other water systems, other people your age.
Non-cancer effects by target organ
Each chemical is divided by its safe-level reference and the results are summed per organ. A total at or above 1.0 is the point where potential effects are flagged, following standard regulatory practice.
Ranked by how many people, not how big the multiple
Findings sort by absolute excess risk, so a doubled rare cancer cannot outrank a modestly raised common disease. Anything under roughly one in two thousand is set aside as negligible rather than dressed up.
Lifetime risk, adjusted for everything else
Absolute risk is integrated forward from your current age against age-specific incidence and all-cause mortality — you have to survive other causes to reach the one being estimated.

Stage 05

What you can take with you.

The screening is not the end of it. Everything is exportable, because a finding you cannot hand to a doctor or a lawyer is not much use.

An evidence packet
Six sections: where you were, what was present in those places, what the screening made of it, how the headline number was built, every dataset behind it with its vintage, and the limits on all of the above.
A one-page summary for a clinician
Your environmental basis, what stands out, and what to raise in the appointment — sized for someone with eleven minutes.
An action plan
Water, air, home, diet and screening steps, prioritised across this week, this month and this year, each with the reduction it is expected to buy.
Your raw data
The full day-by-day database as JSON. Nothing leaves your device until you choose to share it.

Why the same pipeline gives different answers

Place is only ever half of it.

Mia, 8

Place × health history

Eight years of exposure is barely any yet. Her asthma is inherited, but she has seventy more years here to accumulate.

Priya, 31

Place × inheritance

Her mother’s breast cancer sets a floor she cannot change. What the water and air add on top is the part she can.

Rosa, 57

Place × inheritance

A father with Parkinson’s doubles her baseline. Heavy pesticide use doubles it again. The two multiply, they do not add.

Eleanor, 79

Place alone

The same history, fifty-five more years of it. The only thing separating these two charts is time.

What this is not

The honest edges.

This is a screening, not a diagnosis
Nothing here asserts that an exposure caused a condition. It tells you which findings are worth a closer look and what evidence sits behind each one.
Living near something is not the same as absorbing it
Findings built from proximity to sites, county pesticide totals or facility release modeling are capped at low confidence no matter how strong the underlying study, and every one of them is labelled as a proxy. Higher confidence is reserved for personal biomonitoring, documented occupational history, or a direct test of your own water.
Gaps stay visible
Where the record does not reach your address and year, the report says so. A missing input is shown as missing rather than filled with an average.
A figure never appears without its source and vintage
Every number in an exported document carries where it came from and when it was published.

What would your history show?

Start with the places you remember. The app fills in the days.

Get early access

We use cookies and analytics to understand how people use PollutionProfile and improve the experience. We never sell your data. Learn more.