CalCOFI.io CalCOFI.io open data ecosystem

Salinity sensor 2, cruise-corrected

Salinity sensor 2 cruise-corrected

PSUkey salinity_2_corrNERC P01 PSALST02P06 units PSUXseries salinity_2_corr

CalCOFI holds 555,828 values of it from 7,883 sampling events in one dataset, 1998–2026, from the surface to 3,630 m. At 200–500 m it has risen 0.00 per decade since 1998.R Salinity tags the water masses: the California Current carries fresher Subarctic water south and the Undercurrent carries saltier water from the south; with temperature it sets density.C

555,828
values
306
flagged
i
306 of these 555,828 values (under 0.1 %) are flagged by their provider as questionable or bad. The Explorer, the climatology and its anomalies leave them out; do the same when you read the data yourself (cc_qual_ok_sql() in calcofi4r, qual_ok_sql() in calcofi4py).
1998–2026
years
1
dataset
1–3,630 m
depth
every month
months
34.15 g of salt in a kilogram of CalCOFI seawater, at the record’s median salinityBr⁻ 0.2 % · SO₄²⁻ 7.7 % · HCO₃⁻ 0.3 % · Cl⁻ 55.0 % · Mg²⁺ 3.7 % · Na⁺ 30.7 % · K⁺ 1.1 % · Ca²⁺ 1.2 %This is the alternative term for this definition. Only use to cover cases where there are two sensors of the same type contributing to the data set and referential integrity considerations prevent a usage of a single code.

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.

  • 555,828 values · 7,883 sampling events · 1998–2026 · 1–3,630 m · 113 grid cells · 112 cruises
    series salinity_2_corr · source column salt2_corr · flag column salt2_corr_q 306 flagged

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.11.05, 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=%22salinity_2_corr%22
The structure 2 structures
O4S2− sulfate CHEBI:16189 · 96.063 g/mol · component
CHO3− hydrogencarbonate CHEBI:17544 · 61.016 g/mol · component

ChEBI: “A sulfur oxoanion obtained by deprotonation of both OH groups of sulfuric acid.” · 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 Sea-Bird CTD, conductivity sensor 2
CTD sensor
CTD Cast Files · CTD sensor
Sea-Bird CTD, conductivity sensor 2

A Sea-Bird CTD's dual conductivity cells profile in situ; the pumped flow keeps water moving past the sensors regardless of ship roll, and the bottle salts confirm each Niskin closed at its target depth and help select the better-performing sensor for the published series. (calcofi.org Bottle sampling methods)

flag salt2_corr_q306 flagged
Bottle sampling methods on calcofi.org ↗
Why it matters 4 ways to say it · EOV Subsurface salinity

Essential Ocean Variable
Subsurface salinity

the GOOS specification sheet for this Essential Ocean Variable lists it

GOOS specification sheet ↗

other ways to say why · 3
  • authored Salinity and temperature together set seawater’s density, which drives the currents and decides how deep winter mixing reaches. needs a citation before it can be the pick
  • Wikipedia Water mass source
  • Wikipedia Salinity is the saltiness or amount of salt dissolved in a body of water, called saline water. It is usually measured in g/L or g/kg. Salinity · CC BY-SA 4.0 · rev. 1368851206
The record’s own history 7 depth bands against the 1993–2013 normal

Each year against the normal
i

Deeper than the climatology reaches: 3,237 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 PSU · 0 … 45 declared · 306 flagged

PSU · P06 units PSUX

bounds0 … 45 PSUobserved6.795 … 37.7 PSUflagged306baselineclimatology ✓
details
bounds
The registry declares 0 … 45 PSU for salinity_2_corr; a value outside it is dropped at the ingest (drop_out_of_bounds()).
observed
CTD Cast Files salinity_2_corr 6.795 · median 33.99 · 37.7 PSU (5th–95th percentile 33.09–34.3)
flags
CTD Cast Files salinity_2_corr salt2_corr_q on 708 of 555,828 rows: 0 402 · 8 194 · 9 112; qual_ok keeps 555,522. The codes are this dataset's own vocabulary, uninterpreted.
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.
derivation
Sensor salinity offset-corrected from bottle salinities BELOW 350 m and applied at all depths, separately for the primary and secondary sensors - a different scheme from the oxygen/nitrate/chlorophyll regressions.

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,630 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.11.05

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.