CalCOFI.io CalCOFI.io open data ecosystem

Salinity

Salinity - Practical Salinity Scale 1978 (QC'd)

PSS-78key salinityNERC P01 PSLTZZ01P06 units PSUXone key across 2 datasetsseries salinity · salinity_ave_corr

CalCOFI holds 1,534,131 values of it from 44,402 sampling events in 2 datasets, 1949–2026, from the surface to 5,351 m. At 200–500 m it has risen 0.01 per decade since 1984.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

1,534,131
values
1,825
flagged
i
1,825 of these 1,534,131 values (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).
1949–2026
years
2
datasets
0–5,351 m
depth
every month
months
34.02 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 %The quantity of dissolved ions (predominantly salt in seawater) expressed on a scale (PSS-78) based on the conductivity ratio of a seawater sample to a standard KCl solution.

Measured in 2 datasets
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.

  • 848,013 values · 34,868 sampling events · 1949–2021 · 0–5,351 m · 222 grid cells · 650 cruises
    series salinity · source column salnty · flag column s_qual 1,825 flagged · 0.2 %
  • 686,118 values · 9,534 sampling events · 1993–2026 · 1–3,630 m · 113 grid cells · 138 cruises
    series salinity_ave_corr · source column salt_ave_corr · flag column salt_ave_corr_q · PSU sensor mean
    Average salinity corrected

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

Every way in 9 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 · Hydrographic BottleCalCOFI's own server, the Hydrographic Bottle table constrained to this series
https://erddap.calcofi.io/erddap/tabledap/calcofi_bottle.html?&measurement_type=%22salinity%22
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_ave_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 Guildline Portasal 8410A salinometer, two per cruise
rosette bottle
Hydrographic Bottle · rosette bottle
Guildline Portasal 8410A salinometer, two per cruise

About 225 mL drawn from every Niskin into a numbered KIMAX bottle after three rinses; a Guildline Portasal 8410A salinometer compares the sample's conductivity with a reference seawater standard and salinity is computed from the ratio. (calcofi.org Bottle sampling methods)

flag s_qual1,825 flaggedaccuracy +/-0.003 PSU, precision 0.0003 PSU (Guildline specification)
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: 7,207 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 PSS-78 · 0 … 45 declared · 1,825 flagged

PSS-78 · P06 units PSUX

bounds0 … 45 PSS-78observed14.29 … 39.19 PSS-78flagged1,825baselineclimatology ✓
details
bounds
The registry declares 0 … 45 PSS-78 for salinity · salinity_ave_corr; a value outside it is dropped at the ingest (drop_out_of_bounds()).
observed
Hydrographic Bottle salinity 24.19 · median 33.86 · 37.03 PSS-78 (5th–95th percentile 33.11–34.51)
CTD Cast Files salinity_ave_corr 14.29 · median 33.98 · 39.19 PSU (5th–95th percentile 33.1–34.29)
flags
Hydrographic Bottle salinity s_qual on 37,377 of 848,013 rows: 4 1 · 5 1 · 6 35,550 · 8 1,825; qual_ok keeps 846,188. The codes are this dataset's own vocabulary, uninterpreted.
CTD Cast Files salinity_ave_corr carries no quality code at the release grain (its source column is salt_ave_corr_q); qual_ok keeps all 686,118.
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 0–5,351 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 — Hydrographic Bottle, CTD Cast Files. The Explorer's Share → Cite writes it for the view you make.