gold_formations
Canonical registry of geological formations: the named rock units wells target and produce from. One row per stratigraphic unit (group, formation, member, or bed, plus broad age buckets where a source reports only a geological age), with its place in the hierarchy and stable links into public stratigraphic references. formation_id columns across our well, completion, and formation-top tables reference this registry, so a name like Wolfcamp means the same unit everywhere.
Access tier: public_aggregate
Public. These rows are the public layer: aggregate series and reference records such as companies, formations and rig counts. Where a page publishes them you can read them on the website, and a free account can export the aggregate series behind a view (10 a month).
Primary key: formation_id
Region codes: formations
Columns
| Column | Type | Nullable | Description |
|---|---|---|---|
formation_id |
string | no | Stable unit identifier (opaque slug: treat as a key, don't parse it). |
canonical_name |
string | no | Canonical unit name (e.g. Wolfcamp, Bakken, Montney). |
rank |
string | no | Stratigraphic rank: `group`, `formation`, `member`, or `bed` per the North American stratigraphic code, plus `age` for time-tier buckets used when only a geological age is reported.
Values: group · formation · member · bed · age. |
parent_formation_id |
string | yes | The containing unit, where one exists (member to formation to group); NULL at the top of a hierarchy. |
strat_order_base |
float64 | yes | Older end of the unit's age range, in millions of years. For a named rock unit this is the base of the age range the name carries across its published usages (not a point age), so for a long-ranging or loosely defined name it can be considerably older than the unit is anywhere. For an age bucket (rank `age`) it is the start of that geological interval. Two units are reliably ordered by comparing these values only where their age ranges do not overlap. NULL where the source records no age. A published range is not always usable for ordering: see `strat_order_withheld_reason`. |
strat_order_top |
float64 | yes | Younger end of that same age range, in millions of years. For an age bucket (rank `age`) it is the end of that geological interval. Together with the older end it gives the unit's full age span: where two units' age ranges do not overlap, this pair of values orders them by age; where the ranges overlap, neither value orders them. NULL where the source records no age. A published range is not always usable for ordering: see `strat_order_withheld_reason`. |
strat_order_withheld_reason |
string | yes | Why this unit's published age range must not be used to ORDER it against another unit. Normally empty, and the range then means what it says. `interval_label` means the source's only age for this unit is a bare geological-interval label (the start and end of a named period, carried unchanged) rather than a range measured from where the name has actually been mapped. The range is still shown, because it is the age the source records; we simply do not sequence rocks on it, since it cannot be told apart from a measured range and ordering on it silently places rocks in the wrong order. |
macrostrat_strat_name_id |
int32 | yes | Macrostrat stratigraphic-name id, where the unit is anchored there. |
macrostrat_concept_id |
int32 | yes | Macrostrat concept id, where available. |
geolex_unit_id |
string | yes | USGS Geolex unit id (US units), where available. |
weblex_gscc_id |
string | yes | Canadian WEBLEX / GSC lexicon id, where available. |
lithology |
string | yes | Dominant lithology, where recorded (e.g. sandstone, limestone, shale). |
source |
string | no | Where the registry row came from: public stratigraphic databases or our own curation. |
How these numbers are built is on methodology; the machine twin of this page is data-dictionary.json.