Hydrographic Bottle
CalCOFI Bottle Database
calcofi_bottleCalCOFIv2026.09.05ingested
- years
- 1949–2021
- observations
- 11,135,600
- sampling events
- 35,644
- stations
- 213
- variables
- 26
- depth
- 0–5351 m
Overview
Hydrographic bottle data including temperature, salinity, oxygen, nutrients, pigments, and C14 from CalCOFI cruises.
Open with the provider
- Q10 license — proposed
- Q11 pi_names — proposed
calcofi.org page ↗source ↗ingest notebook ↗record JSON JSON-LD
Coverage
26 variables
alkalinity_rep1ammoniac14_darkc14_meanc14_rep1c14_rep2chlorophyll_adic_rep1light_pctnitratenitriteoxygen_ml_loxygen_saturationoxygen_umol_kgphaeopigmentphosphate
Also contributes to
- Carbonate System — alkalinity_rep1, dic_rep1
- Nutrients & Chemistry — ammonia, nitrate, nitrite, phosphate, r_ammonium, silicate
- Productivity & Pigments — c14_dark, c14_mean, c14_rep1, c14_rep2, chlorophyll_a, light_pct, phaeopigment
Access
Every endpoint this dataset can be reached through, grouped by how you would use it. Every URL is in the release record and answered when the release was cut.
Explore
Apps that read this dataset from the release. A row marked “this dataset” opens with it already selected.
https://calcofi.io/explore/?datasets=calcofi_bottle
https://app.calcofi.io/station/?dataset=calcofi_bottle
https://app.calcofi.io/hex/?datasets=calcofi_bottle
https://app.calcofi.io/cruise/?datasets=calcofi_bottle
https://app.calcofi.io/contour/
https://calcofi.io/hypoxia-story/
https://app.calcofi.io/capstone/
Query
SQL against the release itself, in the browser — nothing to install and nothing downloaded until a query asks for it. __TBL:obs__ resolves to the pinned release’s parquet.
https://calcofi.io/db-query/#datasets--bottle
Code
The same release, from a script.
con <- calcofi4r::cc_get_db()
calcofi4r::cc_cite("calcofi_bottle")
con = calcofi4py.cc_get_db()
calcofi4py.cite("calcofi_bottle")
SELECT * FROM read_parquet('https://storage.googleapis.com/calcofi-db/ducklake-staging/tables/obs/dataset_key=calcofi_bottle/d03af38fd79897c03bb7ee59/data_0.parquet') LIMIT 100;
Get the data
Every way to have the bytes, by source. Nothing here asks you to register first.
Files from the release (Parquet)
The frozen objects this release is made of. A partition holds only this dataset’s rows; a shared table holds every dataset’s, so filter on dataset_key.
https://storage.googleapis.com/calcofi-db/ducklake-staging/tables/obs/dataset_key=calcofi_bottle/d03af38fd79897c03bb7ee59/data_0.parquet
CF netCDF
One self-describing file, for a tool that reads netCDF.
how far this file is CF
CF-1.10 where CF applies (coordinates, units, standard names, time). The cast -> bottle -> occurrence hierarchy uses netCDF-4 groups with explicit parent_index links; CF defines no feature type for this nesting.
https://storage.calcofi.io/calcofi-files-public/netcdf/calcofi_bottle/v2026.09.04/calcofi_bottle.nc
ERDDAP (erddap.calcofi.io)
One ERDDAP dataset per grain, each with its own data formats and its own pages. Subset in the browser or query it from a script.
- observations
- one row per measurement, joined to the event it was taken on
- sampling events
- one row per cast, tow or transect — when, where and how it was sampled
Legacy ids, still answering until 2026-12-04: calcofi_casts (replaced by calcofi_bottle)
From the provider
The dataset as its provider publishes it, before CalCOFI ingested it.
https://calcofi.org/downloads/database/CalCOFI_Database_194903-202105_csv_16October2023.zip
Metadata records
Records about the data, in the standards each portal harvests.
https://erddap.calcofi.io/erddap/metadata/iso19115/xml/calcofi_bottle_iso19115.xml
https://erddap.calcofi.io/erddap/metadata/fgdc/xml/calcofi_bottle_fgdc.xml
https://calcofi.io/datasets/calcofi_bottle.jsonld
https://calcofi.io/datasets/calcofi_bottle.json
https://calcofi.io/data.json
https://calcofi.io/stac/#/collections/calcofi_bottle/collection.json
Archives & portals
Where this dataset is registered outside calcofi.io, by the identifier each portal knows it as.
https://erddap.calcofi.io/erddap/info/calcofi_bottle/index.html
https://doi.org/10.5281/zenodo.22281994
https://coastwatch.pfeg.noaa.gov/erddap/tabledap/siocalcofiHydroCast.html
https://coastwatch.pfeg.noaa.gov/erddap/tabledap/siocalcofiHydroBottle.html
Everything here is open — nothing on calcofi.io asks you to register first. If this dataset ends up in something you build or publish, register your use so it can be credited and linked back; to hear when a release changes it, stay informed. Questions: data@calcofi.io.
Cite
CalCOFI. (2023). CalCOFI Bottle Database 194903-202105. CalCOFI.org.
BibTeX
@misc{calcofi_bottle,
title = {CalCOFI Bottle Database},
howpublished = {CalCOFI. (2023). CalCOFI Bottle Database 194903-202105. CalCOFI.org.},
year = {2023}
}
…and the release it came from
CalCOFI (2026). CalCOFI Integrated Database, release v2026.09.05 [Data set]. Scripps Institution of Oceanography, NOAA Fisheries, and California Department of Fish and Wildlife. https://calcofi.io/db-schema/?v=v2026.09.05
BibTeX
@misc{calcofi_release_v2026_09_05,
title = {CalCOFI Integrated Database, release v2026.09.05},
author = {CalCOFI},
year = {2026},
publisher = {Scripps Institution of Oceanography, NOAA Fisheries, and California Department of Fish and Wildlife},
url = {https://calcofi.io/db-schema/?v=v2026.09.05}
}