CalCOFI.io CalCOFI.io open data ecosystem

Bottle nitrate

µmol/Lkey btl_nitrateNERC P01 NTRAZZXXP06 units UPOXseries btl_nitrate

CalCOFI holds 144,753 values of it from 8,481 sampling events in one dataset, 1993–2026, from the surface to 3,510 m. At 10–50 m it has fallen 0.15 per decade since 1993.R Nitrate is the fertiliser upwelling lifts into the light; the spring blooms, and the fisheries above them, run on it. At depth it has risen as oxygen fell, the fingerprint of changing source waters.C

144,753
values
0
flagged
1993–2026
years
1
dataset
1–3,510 m
depth
every month
months
NO3− · nitrate · 62.004 g/mol · CHEBI:17632Concentration of nitrate per unit volume of the water column. Nitrate may be expressed in terms of mass or quantity of substance.

Measured in 1 dataset
i

One row per series, one cell per year, darker with more values — the same strip the front door draws per dataset and a species page draws per taxon. Each row is one dataset's own measurement_type; the label is written once, in the title above.

  • 144,753 values · 8,481 sampling events · 1993–2026 · 1–3,510 m · 109 grid cells · 123 cruises
    series btl_nitrate · source column no3 no flag at this grain

Explorera depth section vs normaldb-queryERDDAPThis page as JSON R · Python · Parquet

Every way in 8 ways · ERDDAP · Parquet · R · Python · JSON

Read from measurements.json of release v2026.10.21, written at release by calcofi4db::build_measurements_catalog() beside taxa.json. The catalog's index is /measurements/; the JSON-LD on this page is a schema.org/DefinedTerm in the NERC P01 term set with a PropertyValue per series.

ExplorerExplorer · a depth section vs normaldb-query
ERDDAP · CTD Cast FilesCalCOFI's own server, the CTD Cast Files table constrained to this series
https://erddap.calcofi.io/erddap/tabledap/calcofi_ctd-cast.html?&measurement_type=%22btl_nitrate%22
The structure NO3− nitrate
NO3− nitrate CHEBI:17632 · 62.004 g/mol · the_thing

ChEBI: “A nitrogen oxoanion formed by loss of a proton from nitric acid. Principal species present at pH 7.3.” · RDKit 2026.03.6 from the ChEBI molfile, in the page’s ink · CC BY 4.0. ChEBI’s roles are never shown.

How it is measured Seal Analytical continuous-flow AutoAnalyzer 3 (AA3) at 520 nm
rosette bottle520 nm
CTD Cast Files · rosette bottle
Seal Analytical continuous-flow AutoAnalyzer 3 (AA3)

A modification of Armstrong (1967): the seawater sample passes through a cadmium column that reduces nitrate to nitrite, then sulfanilamide and N-(1-naphthyl)ethylenediamine couple it into a red azo dye read in a 10 mm flow cell; nitrate is the combined nitrate-plus-nitrite reading minus a parallel nitrite-only run without the cadmium column. (calcofi.org Bottle sampling methods)

  • NO3- -> NO2- (cadmium column, 98-100% efficient)
  • NO2- + sulfanilamide + NED -> red azo dye
  • absorbance read at 520 nm
no flag at this grain
Bottle sampling methods on calcofi.org ↗
Why it matters 6 ways to say it · EOV Nutrients

Essential Ocean Variable
Nutrients

the GOOS specification sheet for this Essential Ocean Variable lists it, and asks

GOOS asks

  • How do the eutrophication and pollution impact ocean productivity and water quality?
  • Is the biomass of the ocean changing?

GOOS specification sheet ↗ · quoted, not copied

other ways to say why · 5
  • authored Nitrate at the surface is a fingerprint of recent upwelling: where it is high, cold deep water has just arrived and a bloom follows. needs a citation before it can be the pick
  • GOOS asks How do the eutrophication and pollution impact ocean productivity and water quality? source
  • GOOS asks Is the biomass of the ocean changing? source
  • Wikipedia Upwelling source
  • Wikipedia Nitrate is a polyatomic ion with the chemical formula NO3−. Salts containing this ion are called nitrates. Nitrate · CC BY-SA 4.0 · rev. 1378622700
The record’s own history 6 depth bands against the 1993–2013 normal

Each year against the normal
i

Deeper than the climatology reaches: 54 values at 1000–2000 m, 20 values at 2000+ m have no normal to depart from, because the release’s climatology stops at its deepest built bin. Carrying it to the bottom is one argument of build_climatology() and puts these bands on the page too.

Units and range µmol/L · 0 … 100 declared · 0 flagged

µmol/L (umol/L in metadata/measurement_type.csv) · P06 units UPOX

bounds0 … 100 µmol/Lobserved0 … 47.84 µmol/Lflagged0baselineclimatology ✓
details
bounds
The registry declares 0 … 100 µmol/L for btl_nitrate; a value outside it is dropped at the ingest (drop_out_of_bounds()).
observed
CTD Cast Files btl_nitrate 0 · median 17.1 · 47.84 µmol/L (5th–95th percentile 0–39)
flags
CTD Cast Files btl_nitrate carries no quality code at the release grain; qual_ok keeps all 144,753.
baseline
A monthly climatology exists for this measurement (the release's climatology table: 1993–2013, dataset × station × the cruise's month × 10 m bin), so the Explorer can draw anomalies against it rather than values.

The familiar scale
i

Bars are each series' 5th–95th percentile, the line its minimum to maximum, the ring its median; the marks are metadata/measurement_scale.csv's, each hovering to its own source.

By depth · by month 1–3,510 m · every month

By depth
i

Values per depth band at the release grain, one thin bar per series. The bands are the record's own (0-10 … 2000+ m).

By month
i

Values per calendar month, one row per series: CalCOFI's quarterly cruises show as peaks in the months the ships sail.

Cite the release, v2026.10.21

Cite the release; each dataset's own citation, licence and DOI are on its page — CTD Cast Files. The Explorer's Share → Cite writes it for the view you make.