Engineering 8 min read

P10/P50/P90 Type Curves in Minutes: A Better Way to Set Completion Expectations

What a statistically rigorous type curve actually requires, where engineers typically cut corners, and how to build one you can defend in a reserve review.

WellStrata Team ·

Type curves are one of the most consequential analytical outputs in oil and gas engineering. They set expectations for how a new well will produce, which feeds into EUR estimates, which feed into reserve reports, which feed into acquisition pricing, development planning, and capital allocation decisions.

Given the stakes, it is somewhat remarkable how often type curves are built under time pressure, from incomplete datasets, with peer selection criteria that would not survive a rigorous review.

This is not usually carelessness. It’s a resource problem: pulling the right peer wells, normalizing for lateral length, grouping by vintage, calculating percentiles, and generating a plot that communicates uncertainty properly takes hours in most data environments. When a decision needs to be made this week, the type curve gets simplified.

WellStrata’s Type Curve Builder is designed to make rigorous type curves fast enough to be the default approach, not the aspirational one.

What goes into a type curve

A type curve represents the expected production profile of a well given a set of peer characteristics. The quality of a type curve depends entirely on the quality of the peer selection: if your peers are the wrong age, wrong lateral length, wrong formation, or from an operator with an anomalously good or bad completion program, your curve will not represent what you’re actually planning to drill.

The key variables for peer selection:

Formation — the most important filter. Wolfcamp A and Wolfcamp B have different pressure regimes, fluid properties, and completion responses. Mixing them produces a type curve that doesn’t represent either.

Geography — county or sub-county level. The Wolfcamp is a different rock in Midland County than it is in Reeves County. Formation name alone is not enough.

Vintage — completion year range. Completion technology improved materially from 2015 to 2022. Wells drilled with older frac designs should not be peers for a 2024 completion plan unless you’re trying to understand how much improvement is achievable.

Lateral length — either filter to a comparable lateral range or normalize rates per 1,000 ft of lateral. A 10,000-ft lateral completing 1,500 bbl/d IP30 is not the same as a 7,000-ft lateral at the same rate.

Minimum production history — a well that has only 6 months of history cannot tell you what month 24 looks like. Set a minimum months-on-production for peers depending on the EUR horizon you’re working with.

How the Type Curve Builder handles this

The left filter panel accepts: state, formation, operator (optional — for operator-specific curves), county, vintage year range, maximum months-on-production, minimum production history months, and minimum lateral length.

The normalize by lateral length toggle divides all production rates by lateral length in thousands of feet before calculating percentiles. This is the right approach when you’re comparing wells with meaningfully different lateral lengths in the same peer set.

Click Build Type Curve, and the backend pulls every well matching the criteria, aligns them to months-on-production (MOP 1 = first full calendar month of production), and calculates P10, P50, and P90 rates at every month. The chart plots MOP on the X axis and oil rate (bbl/mo) on the Y axis, with:

  • A shaded band between P10 and P90 showing the range of expected outcomes
  • The P50 as a bold center line — the median well performance
  • Optional log/linear Y-axis toggle for visualizing early-time behavior versus late decline

The right sidebar shows the well count that went into the curve (total matching the filter vs. wells with enough history to contribute to each MOP calculation), and P10, P50, and P90 EUR. Each is a full-life estimate: the builder fits a modified-hyperbolic decline to the percentile curve and integrates it out to a terminal (economic-limit) exponential decline, rather than summing only the months you can see. That distinction matters most for young plays — a five-year type curve still has most of its recoverable volume ahead of it, and a truncated sum would understate EUR badly. Read the P50 EUR as the expected type well, with P10 and P90 as the upside and downside cases.

Oil, gas, and single-well forecasts

The builder runs on either stream. Toggle between oil and gas and the curves and EUR switch units accordingly — bbl/mo and Mbbl for oil, mcf/mo and MMcf for gas — so a gas play gets the same treatment as an oil one.

Type curves also drive single-well forecasting. Open an individual well’s Type Curve tab and it overlays that well’s actual production against its peer P10/P50/P90. Turn on “Scale to this well,” and the builder anchors the cohort P50 to the well’s own IP and reports a per-well forecast — projected EUR and remaining reserves. This is the practical way to forecast a well that is too young to fit its own decline curve: borrow the shape from its peers and scale it to what the well has actually delivered so far.

Multi-curve overlay

The most useful feature for comparative analysis is the multi-curve overlay.

After building a curve for your base case, click “Add Curve.” The current P10/P50/P90 set is pinned as an overlay in a different color palette. You can then change any filter — a different vintage range, a different county, a different lateral length minimum — and build a second curve. The two sets of percentiles render together on the same chart, with the overlay shown in dashed lines.

This answers questions like:

  • How much did completion performance improve from 2018-vintage to 2022-vintage wells in this formation?
  • What is the EUR difference between wells longer than 10,000 ft versus wells shorter than 8,000 ft?
  • How does Operator A’s type curve compare to the formation P50?

Overlaying curves shifts type curve building from a single-scenario exercise into a range-of-outcomes analysis, which is what it should be for any significant capital decision.

CSV export

The export button downloads a CSV with P10, P50, and P90 rates at every month-on-production from 1 to the maximum MOP in your filter. This is the format that feeds into reservoir simulators, financial models, or any EUR calculation you want to do outside the platform.

What the curve cannot tell you

A type curve represents historical performance of the peer set. It does not account for:

  • Future commodity prices or operating cost changes
  • Planned completion design changes (more proppant, different fluid, tighter stage spacing) that have no analog in the peer set
  • Subsurface heterogeneity that isn’t captured in the formation-county filter
  • Parent-child interference if the location is adjacent to existing production

These are engineering judgment calls that belong on top of the empirical curve, not inside it. The curve gives you the base; the engineering team applies the adjustments.

The most honest type curve presentation shows the P10/P50/P90 band alongside the specific filter criteria that generated it — so anyone reviewing it can evaluate whether they agree with the peer selection before debating the EUR estimate.


The Type Curve Builder is available on the Standard, Professional, and Enterprise plans. The 14-day trial includes full access — no credit card required.

Try WellStrata free for 14 days

No credit card required. Access all features across every state we cover from day one.

Request Access