Get the data

Free. You will be asked to confirm an email address before the files are built — that is the only gate, and it is there so we can tell you when a large export is ready.

Preview the first 100 rows

What this is

GSA018K. The gas counterpart of the W-10 file: the G-10 deliverability test behind a gas well's allowable, with the daily gas, condensate and water on the test day, the shut-in, flowing and bottom-hole pressures, gas and condensate gravity and the gas-liquid ratio that classifies the well. One 130-byte EBCDIC record per test, keyed on the gas well's statewide RRC identification number; decoded here with the implied decimals restored and the mainframe's MMDDCCYY dates read the right way round.

What you can do with it

Read the deliverability and pressures a gas well tested at, compare them against its reported PDQ production, and find wells whose G-10 has lapsed.

Gotchas

The file RRC publishes under this name is not current. The copy fetched in August 2026 holds tests dated 1990 to November 2021 and effective dates from November 2019 to November 2021: read it as the state of the gas schedule in late 2021 rather than today's.

rrc_id is the gas well's statewide RRC identification number, unique across Texas — the same number PDQ carries as lease_no for oil_gas_code = 'G', zero-padded to six digits there and an integer here. Restrict any PDQ join to the gas schedule: an oil lease can have the same digits.

Three columns have implied decimals: gas_gravity was written as four digits meaning 0.600, cond_gravity as three meaning 45.2, and daily_cond_bbl as six meaning 12.5. They are stored scaled; the pristine file is not.

gas_oil_ratio is 9999 in 27,359 rows and 27,355 of them report zero condensate — a placeholder for 'no liquid to ratio', not a measured value. potential_mcf is non-zero in five rows and wh_pressure_test_date is empty in every row of the current tape.

The dates on this tape are MMDDCCYY, not the CCYYMMDD the rest of the corpus uses; the loader checked every non-zero test date against both readings before choosing. If you go back to the original, read them month-first.

Sentinel dates are everywhere: 0000-00-00, 00000000 and 1900-01-01 all mean "not recorded". The upstream loader turns the unparseable ones into NULL, but a 1900 date that parsed cleanly is still a placeholder, not a fact.

Record layout

23 columns. Byte positions are 1-based and come from the RRC record layout, so you can check our decoding against the original file yourself.

gas_well_status_g10 23 columns

Record layout for gas_well_status_g10 — 23 columns, with byte positions
# Column Type Bytes RRC name Meaning Lookup
1 record_id text 1-2 G10-ID The tape ID, 'GT' on every one of the 163,819 records. Kept because a second value appearing is the sign the file has stopped being a single-record-type tape. e.g. GT
2 district join text 3-4 G10-DST RRC district the well is in, written the way RRC prints it: 01-06, 7B, 7C, 08, 8A, 09, 10 (the manual does not list 6E for gas). Not the internal number PDQ uses in district_no — join to PDQ on district_name. e.g. 01 RRC district (printed designation)
3 rrc_id key join integer 5-10 G10-RRCID The gas well's six-digit RRC identification number, unique across Texas. It is the same number PDQ carries as lease_no for oil_gas_code = 'G', zero-padded there and an integer here. e.g. 222
4 test_date date 12-19 G10-TST-DATE Date the G-10 test was conducted. On the tape this is MMDDCCYY, not the CCYYMMDD used elsewhere in the corpus; the loader read it month-first, which every non-zero value parsed as and none parsed the other way. Null when the tape carried zeros. e.g. 2019-09-26
5 daily_gas_mcf integer measured in MCF/d 21-25 G10-DLY-GAS Deliverability: daily gas produced during the G-10 test, in MCF. e.g. 36
6 daily_cond_bbl numeric measured in bbl/d 27-32 G10-DLY-COND Daily condensate produced during the test, in barrels, to one decimal place. The tape wrote six digits with the point implied (PIC 9(05)V9); the loader restores it.
7 daily_water_bbl integer measured in bbl/d 34-38 G10-DLY-WTR Daily water produced during the test, in barrels.
8 siwh_pressure integer measured in psi 40-45 G10-SIWH-PRESS Shut-in wellhead pressure measured during the G-10 survey test, in psi. Non-zero in 116,675 rows.
9 potential_mcf bigint measured in MCF/d 47-53 G10-POTE The well's absolute open-flow potential in MCF, where the field rules require it. Non-zero in five rows of the current tape.
10 shut_in_code text 55 G10-SHUT-CD 'Y' when the well is shut in; null otherwise.
11 gas_gravity numeric 57-60 G10-GAS-GRAV Specific gravity of the gas produced on the test, air = 1. The tape wrote four digits with three implied decimals (PIC 9V9(03)), so 0.600 arrived as '0600'; stored scaled, and NUMERIC(4,3) cannot hold the unscaled value by construction. e.g. 0.720
12 cond_gravity numeric measured in API 62-64 G10-CON-GRAV API gravity of the liquid produced on the test, to one decimal place (PIC 9(02)V9 on the tape).
13 gas_oil_ratio integer measured in cf/bbl 66-70 G10-RATIO Gas-liquid ratio in cubic feet per barrel; the statutory gas-well line is 100,000. 9999 in 27,359 rows, 27,355 of which report zero condensate — a placeholder for 'nothing to ratio', not a value. e.g. 9999
14 flowing_pressure integer measured in psi 72-76 G10-FLOW-PRESS Flowing wellhead (tubing) pressure during the test, in psi.
15 bottom_hole_pressure integer measured in psi 78-82 G10-BHP Bottom-hole pressure, in psi, where the field rules require it as part of the survey test. Non-zero in 7,036 rows.
16 shut_in_pressure integer measured in psi 84-88 G10-SHUT-PRESS Wellhead pressure of a well whose status is shut-in, in psi.
17 late_test_flag text 90 G10-LATE-TST 'X' when RRC considers this G-10 a delinquent test; null otherwise.
18 correction_code text 92 G10-CORR-CD 'X' when this G-10 has been corrected; null otherwise.
19 shut_in_date date 94-101 G10-SHUT-DATE Date the well last produced or was utilised, MMDDCCYY on the tape. Null unless the well is shut in (3,272 rows).
20 commingle_code text 103 G10-COMN-CD '*' when this G-10 is the annual commingle test; null otherwise.
21 operator_no join text 105-110 G10-OPR The six-digit P-5 organization number of the company that filed the G-10. Every sampled value resolves to the P-5 directory. e.g. 130426
22 wh_pressure_test_date date 113-120 G10-WH-PRES-TEST-DATE Date of the wellhead pressure test, MMDDCCYY on the tape. Empty in every row of the tape fetched in August 2026.
23 effective_date key date 123-130 G10-EFF-DATE Date the G-10 became effective for allowable purposes, MMDDCCYY on the tape. With rrc_id this is the natural key: one row per well per effective date. e.g. 2020-01-01

Code lookups used here

Every coded column in this dataset resolves to a real lookup table, so a well code of G can be read as what it actually means.

RRC district (printed designation) 14 values

Read by district

The district as the Railroad Commission prints it: 01-06, 6E, 7B, 7C, 08, 8A, 09 and 10, plus 20 for statewide. This is what appears on permits, completions, ST-1 filings and inspection reports. It is not interchangeable with the internal district number. A column holding '11' means District 8A under the internal numbering and nothing at all under this one.

RRC district (printed designation) — 14 codes and their meanings
CodeMeans
01 District 01 — San Antonio RRC District 01, administered from the San Antonio district office.
02 District 02 — San Antonio RRC District 02, administered from the San Antonio district office.
03 District 03 — Houston RRC District 03, administered from the Houston district office.
04 District 04 — Corpus Christi RRC District 04, administered from the Corpus Christi district office.
05 District 05 — Kilgore RRC District 05, administered from the Kilgore district office.
06 District 06 — Kilgore RRC District 06, administered from the Kilgore district office.
6E District 6E — Kilgore RRC District 6E, administered from the Kilgore district office.
7B District 7B — Abilene RRC District 7B, administered from the Abilene district office.
7C District 7C — San Angelo RRC District 7C, administered from the San Angelo district office.
08 District 08 — Midland RRC District 08, administered from the Midland district office.
8A District 8A — Midland RRC District 8A, administered from the Midland district office.
09 District 09 — Wichita Falls RRC District 09, administered from the Wichita Falls district office.
10 District 10 — Pampa RRC District 10, administered from the Pampa district office.
20 District 20 — State Wide RRC District 20, administered from the State Wide district office.

Source: Generated from texas.pdq_gp_district.district_name

What this joins to

The Railroad Commission never states these keys anywhere in the files. They are the reason the data is hard to use, so here they are with the exact columns on both sides.

Gas Well Status (26 Month G-10) joins to P-5 Organization (ASCII) on Operator number = ID — many rows here share a single row there.

was filed by

The six-digit P-5 number of the company that filed the G-10, resolved to the operator directory. All 5,000 sampled tests resolve; the column is never null and never non-numeric on the current tape. These two columns are different types — one is text, the other an integer — so a direct equality is rejected by Postgres. Cast the text side to integer, which also disposes of any leading zeros; casting the integer to text would not, because '000123' and 123 are not equal as text.

gas-well-status-g10.operator_no = p5-organization-ascii.id

Gas Well Status (26 Month G-10) joins to Gas Ledger — Wells on District = District and RRC ID = Gas RRC ID — many rows here share a single row there.

was tested on the G-10 as

From the gas schedule to the deliverability tests behind it. 1,393 of 5,000 sampled ledger wells match on the columns as they stand; 1,621 once the ledger's leading zero is stripped from 07B, 07C and 08A. The ceiling is low for a reason that is not the spelling: the G-10 file RRC publishes was cut in late 2021 and holds no test after November of that year, so two thirds of today's gas wells have no row in it at all. rrc_id alone matches exactly as many as district and rrc_id together, because the id is unique statewide.

gas-ledger-wells.district = gas-well-status-g10.district AND gas-ledger-wells.gas_rrc_id = gas-well-status-g10.rrc_id

Gas Well Status (26 Month G-10) joins to Statewide Gas Well Database on RRC ID = Gas RRC ID — many rows here share a single row there.

was tested on the G-10 as

The gas well's RRC ID is the G-10 status file's rrc_id, and both sides store it as an integer, so this join needs nothing done to it. 154,313 test rows match, over 44,970 of the 138,901 wells. No district is needed: the RRC ID is unique across Texas (138,901 distinct values in 138,901 rows), and adding the district changes nothing -- all 154,313 matched rows agree on it, once internal 10 is read as District 08. The two files are cut at different times. The status file RRC publishes separately holds tests up to November 2021 and nothing after; this tape's own G-10 segment is current to July 2026, with 171,826 of its 172,707 tests dated 2022 or later. So a well with no match here is one with no test in that 2021 file -- which says nothing about whether it has been tested since. For that, read the G-10 segment this dataset already carries.

statewide-gas-well-database.gas_rrc_id = gas-well-status-g10.rrc_id

Gas Well Status (26 Month G-10) joins to PDQ Well Completion Directory on District = District name and RRC ID = Lease number — many rows here share a single row there.

was tested on the G-10 as

PDQ's gas-schedule well completion, matched to its G-10 tests: the gas well ID PDQ carries as lease_no is the G-10's rrc_id. Restrict the PDQ side to oil_gas_code = 'G' — 25 of 20,000 sampled oil completions share digits and district with a gas well. 944 of 5,000 sampled gas completions have a test on the current tape, which was cut in late 2021. These two columns are different types — one is text, the other an integer — so a direct equality is rejected by Postgres. Cast the text side to integer, which also disposes of any leading zeros; casting the integer to text would not, because '000123' and 123 are not equal as text.

pdq-well-completion.district_name = gas-well-status-g10.district AND pdq-well-completion.lease_no = gas-well-status-g10.rrc_id

Gas Well Status (26 Month G-10) joins to Statewide Production Data — Gas on RRC ID = Gas RRC ID — many rows here share a single row there.

was tested on the G-10 as

The deliverability tests behind the allowable. 1,028 of 5,000 sampled wells match, and the ceiling is the G-10 file rather than the key: the copy RRC publishes was cut in late 2021 and holds no test after November of that year, so most wells reporting today have no row in it. On the id alone, for the same reason as the ledger edge above -- the G-10 writes the printed district (7B, 8A) and this tape writes the internal number. Both columns are integers.

statewide-production-data-gas.gas_rrc_id = gas-well-status-g10.rrc_id

Gas Well Status (26 Month G-10) joins to Historical Ledger — Statewide Gas on RRC ID = Gas RRC ID — many rows here share a single row there.

was tested on the G-10 as

The deliverability tests behind the allowable. 48,301 of the 219,384 wells match, and the ceiling is the G-10 file rather than the key: the copy RRC publishes was cut in late 2021 and holds no test after November of that year. On the id alone, for the same reason as the ledger edge above -- the G-10 writes the printed district (7B, 8A) and this tape writes the internal number. Both columns are integers.

historical-ledger-gas.gas_rrc_id = gas-well-status-g10.rrc_id

Gas Well Status (26 Month G-10) joins to PDQ Lease Summary (master) on District = District name and RRC ID = Lease number — many rows here share a single row there.

has G-10 tests

From a gas well's production summary — PDQ carries gas wells as leases, keyed on the same six-digit ID — to its G-10 tests. Restrict the PDQ side to oil_gas_code = 'G'; 0 of 20,000 sampled oil leases collide. 1,389 of 5,000 sampled gas leases have a test on the current tape. These two columns are different types — one is text, the other an integer — so a direct equality is rejected by Postgres. Cast the text side to integer, which also disposes of any leading zeros; casting the integer to text would not, because '000123' and 123 are not equal as text.

pdq-lease-summary.district_name = gas-well-status-g10.district AND pdq-lease-summary.lease_no = gas-well-status-g10.rrc_id

Where this comes from

Published by
Texas Railroad Commission — the original page
Original format
EBCDIC IBM mainframe encoding (cp037). Opening it as text gives you nonsense; it has to be transcoded first.
RRC publishes
Updated once a month (Monthly. Available by the 27th.)
RRC download link
GoAnywhere MFT
Record layout manual
Our table
texas.gas_well_status_g10

EZRRC is an independent mirror of public-domain data published by the Texas Railroad Commission. It is not affiliated with or endorsed by the RRC. For any legal or regulatory purpose, verify against the official RRC release.