{{nav}}

When the pipe is full

Permian gas production set against the pipeline capacity that carries it out of the basin, from public data, and what venting and flaring did as the gap closed and reopened.

Most of the gas in the Permian Basin comes up with oil. In {{csgd_year}}, {{csgd_pct}} per cent of the gas the Texas Railroad Commission recorded in the basin's three districts came from oil wells, and an oil well does not stop producing gas because the gas has nowhere to go. When the pipelines out of the basin are full, the price at the Waha hub can fall below zero, and gas that cannot be moved is burned or released at the lease. The Commission's own account of flaring says as much: in existing fields, flaring "may be necessary because existing pipelines may have reached capacity".

This page asks how close production runs to the capacity that carries it out, and what happens to venting and flaring as that gap closes and reopens around each new pipe. It uses only public data: EIA's estimate of the region's production, a dated list of pipeline capacity built from EIA's project tracker and dated reports of when lines started, and the venting and flaring operators in the basin's three Texas districts report to the Commission.

Try it

Grow production and see when the headroom runs out

Set a growth rate for production, delay the pipelines that are only expected, change how much of each new unit of gas has to leave by pipe, and move the month the pipes are assumed full. It is a scenario, not a forecast: the model on this page, run forward in the browser.

Open the headroom scenario Download code

What it finds

Pipe has been added in steps, and most of what is still to come is only expected. EIA, quoting PointLogic, put the basin's takeaway capacity at {{anchor_lo}} to {{anchor_hi}} Bcf/d in {{anchor_month}}. Since then {{n_conf}} additions are in service, {{conf_total}} Bcf/d between them, the largest Matterhorn Express at {{matterhorn}} Bcf/d. Another {{exp_total}} Bcf/d is expected by {{exp_last}}, {{exp_by}} Bcf/d of it by the end of {{exp_by_year}}. None of the expected lines is counted as in service until an opened source says it is.

Pipeline capacity out of the Permian Basin from {{anchor_month}}, as a band {{anchor_width}} Bcf/d wide for the uncertainty in the starting estimate. Lines in service step up from {{anchor_lo}} to {{anchor_hi}} Bcf/d to {{conf_lo_end}} to {{conf_hi_end}} Bcf/d; with the expected lines the band reaches {{all_lo_end}} to {{all_hi_end}} Bcf/d by {{exp_last}}.

Production and capacity cannot be drawn on one axis. EIA's production figure is marketed gas, measured before the natural gas liquids are taken out and before gas is burned in the field and at processing plants, and it already exceeded the capacity estimate in {{anchor_month}} ({{P_anchor}} against {{anchor_lo}} to {{anchor_hi}} Bcf/d). What can be compared is the change. From a month when the pipes are taken to be full, the pipe added since, less the share of the production added since that has to leave by pipe, is the headroom gained or lost.

Taking {{t0_long}} as that month, {{cap_t0}} Bcf/d of pipe confirmed in service has been added since, and production has risen {{dP_t0}} Bcf/d, of which {{kdP_t0}} has to leave by pipe at the default share, k = {{k_def}}. That puts {{last_long}} at {{H_last}} Bcf/d: on this accounting, less headroom than in {{t0_long}}. The path between was not steady. After Matterhorn the headroom stood at {{H_after_m}} Bcf/d and reached {{H_peak}} in {{H_peak_month}}; production growth then ate it, and at the default k it was below zero in {{n_neg}} months ({{neg_months}}), and at the top of k's range in {{n_neg_hi}}. Hugh Brinson's first phase, {{hb1}} Bcf/d, entered commercial service in August and was expected to reach that capacity by September 1. No source in hand says it did, so it is not counted; counted in full from September, it would put {{last_long}} at {{H_with_hb}} Bcf/d.

Headroom gained or lost since {{t0_long}}, monthly to {{last_long}}. It jumps to {{H_after_m}} Bcf/d when Matterhorn enters service, peaks at {{H_peak}} Bcf/d in {{H_peak_month}}, falls through 2025 as production grows, sits near zero from February to May 2026, drops to {{H_min}} Bcf/d in {{H_min_month}} and is {{H_last}} Bcf/d in {{last_long}}. The shaded band is the range of k, at most {{band_max}} Bcf/d wide.

Whether {{t0_long}} really was a full month decides how to read that line, and two things outside the model were set down beforehand as the test of it. If the pipes were full, production should have been held back before Matterhorn and released after it. It was not: production grew {{pin_before}} Bcf/d over the three months to {{t0_long}} and {{pin_after}} Bcf/d over the three after Matterhorn opened. If the pipes were full, operators in the three districts should have vented or flared more before than after. They did, by {{fc_diff}} of a point: {{fc_before}} per cent of gross withdrawals over {{fc_before_span}} against {{fc_after}} per cent over {{fc_after_span}}. One test for and one against, so the reference month is not established. The line is best read as the pipe added less the gas added since {{t0_long}}, not as spare capacity.

Venting and flaring fell after each of the three pipes, or groups of pipes, the data can test. In the three Permian districts, the share of gross withdrawals vented or flared averaged {{c1_before}} per cent in the {{window_word}} months before Gulf Coast Express started in {{c1_start}} and {{c1_after}} per cent in the {{window_word}} after; around Permian Highway and Whistler in {{c2_year}} it went from {{c2_before}} to {{c2_after}} per cent; and around the group that runs from the Whistler expansion in {{c3_first_long}} to Matterhorn in {{c3_last_long}}, from {{c3_before}} to {{c3_after}} per cent. Set against the {{placebo_n}} before-and-after differences at months clear of the starts listed here, the 2019 fall is larger than every one; {{c2_rank}} of them fell further than the 2021 group did and {{c3_rank}} further than the Matterhorn group, so only the first stands out. Those months all fall between {{pl_first}} and {{pl_last}}, a span over which the share rose, which leans towards making a fall look unusual; but the placebo falls that exceed the 2021 group all come from {{pl_fall_year}}, a year in which the share fell, as do {{c3_in_falling}} of the {{c3_rank}} that exceed the Matterhorn group. The list does not date lines before 2019, so those months are not shown to be clear of every new pipe. None of this is evidence that a pipe caused a fall: the 2019 window runs into the price collapse and shut-ins of 2020, and the 2021 window opens on that year and takes in the February 2021 winter storm.

Gas vented or flared in the three Permian districts as a share of gross withdrawals, monthly from {{vf_first_long}} to {{vf_last_long}}, with a dashed line at each start listed. It peaks at {{vf_peak}} per cent in {{vf_peak_month}}, before Gulf Coast Express, and is {{vf_end}} per cent in {{vf_last_long}}.

Prices are not drawn here, because no free daily series for Waha exists. The counts that are published measure different things and are left apart. EIA, from Natural Gas Intelligence data, put Waha "below zero for {{eia_pct}}% of trading days in {{eia_year}}". Reuters counted daily averages below zero {{r_2024}} times in 2024, {{r_2025}} times in 2025 and {{r_2026}} times in 2026 by {{r_date}}, and put a record run of {{r_run}} days in a row down to "pipeline constraints from spring maintenance", which a capacity list like this one does not contain.

Method

Production. EIA's Short-Term Energy Outlook, {{steo_release}} release, Table 5a, series NGMPPM: marketed natural gas, Permian region, monthly, history to {{last_long}}. The region is drawn by county, {{n_tx_counties}} in Texas and {{n_nm_counties}} in New Mexico. Its forecast months are not used. The Railroad Commission's figures for the Permian, which it defines as districts 7C, 08 and 8A, are Texas only and measured at the lease before any gas is taken out; they were checked against EIA month by month over {{rec_n}} months ({{rec_first}} to {{rec_last}}), and the ratio of the two held between {{rec_min}} and {{rec_max}} (mean {{rec_mean}}). The two are different measures with a stable relation, so EIA's is used for every comparison with capacity, because the pipes carry New Mexico gas too.

Capacity. A line is counted when it starts in the basin and a cited source describes it as carrying gas out of the Permian. Lines inside the basin, lines that start downstream of it, and laterals are not. Capacity and dates are read from EIA's pipeline projects tracker; where a newer report gives a date, it is used and the source named. Where sources disagree on the month a line started, the later month is used. A line is "in service" only where an opened source says it is; every other date is an expectation and is shown as one.

{{cap_rows}}
LineBcf/dStartStatus, per

The share k. Not every unit of marketed gas leaves by pipe: the liquids are taken out, and some gas is burned in the field and at the plants. EIA gives both by state. For {{k_year}}, dry gas less lease and plant fuel was {{k_both_net}} of marketed production across Texas and New Mexico; Texas alone {{k_tx_net}}, and dry gas alone {{k_both_dry}}. The default is the first, and the band in the headroom figure runs between the other two. These are statewide ratios standing in for the Permian, and both known errors push the true value lower: associated gas is wetter than the states' average, and gas burned in the basin by power plants and industry is not removed. A k that is too high makes the headroom look smaller, so the default leans towards finding the pipes full.

The reference month. EIA reported on {{eia_t0_date}} that Waha was below zero "every day since July 26", so {{t0_long}} falls wholly inside that run; September does not, because Matterhorn was expected to begin service that month. The app moves it a month either way.

Venting and flaring. The Railroad Commission's Production Data Query dump, extracted {{vf_extract}}: gas reported vented or flared (disposition code 4, which does not separate the two) over gas-well and casinghead production, districts 7C, 08 and 8A, {{vf_first_long}} to {{vf_last_long}}. The {{unsettled_word}} most recent months in the dump are left out, because late reports still change them. Every disposition row with gas vented or flared joins a production row for the same lease and month, and the production side equals the Commission's Permian workbook month by month. Before-and-after windows are {{window_word}} months each, so each pair covers the same calendar months; starts less than {{window_word}} months apart are taken together, and a group is tested only if both its windows are complete and hold no other start. The starts are the tracker's completion months for lines that leave the basin. Double E, which EIA counted as takeaway in 2021, runs from New Mexico to Waha, inside the basin, and is not one of them; the tracker completes it in {{dbl_e}}, inside the 2021 group's after-window.

Limits

The production figure is an estimate, and EIA revises its latest months. The capacity anchor is a third-party estimate whose definition is not published, and the additions follow a narrower rule than it does; the anchor cancels out of the headroom, the rule does not. Capacity is nameplate and enters as a full step, while lines ramp up over months and maintenance takes capacity out. The reference month is an inference from prices, and one of the two tests set for it went against it. Venting and flaring are what operators report, and the code they report it under does not separate the two. Several in-service dates rest on trade press reporting what the pipelines' owners said, because no primary filing could be opened. The page forecasts nothing, and it names no company as the cause of anything.

The code

Python: the fetch scripts, each recording where and when its file came from; the readers, the capacity list with every source and quote, the model, the payload builder, the figures and the page generator; the scenario's JavaScript engine and its parity test; and the checks, each shown failing before it is trusted. The archive holds no raw data; the fetch scripts download it. {{zip_kb}} KB.

Download source All code