MODULE GUIDES

Decline & RTA

Decline fitting with outlier handling, EUR with P90/P50/P10, type wells, batch decline across a field and rate-transient analysis.

Last edited

Overview

The Decline & RTA module fits decline curves to a well's rate history and forecasts EUR to an economic limit, with a P90/P50/P10 range. It also builds type wells from groups of wells, runs batch decline across a field, and analyses rate and flowing pressure together with rate-transient methods and flowing material balance. Use decline for wells in steady decline under constant operating conditions; use the RTA tab when you also have flowing bottomhole pressure.

The page has six tabs: Rate data, Decline fit, EUR & uncertainty, Type well, Batch (field) and Rate transient (FMB).

Inputs

Rate data

Input Unit (Field / Metric) Notes and defaults
Well name – Used in titles and file names.
Fluid – Oil (STB/d or Sm³/d) or Gas (Mscf/d or Sm³/d).
Time days Also "t (months)" or dates as yyyy-mm, yyyy-mm-dd or m/d/yyyy.
Rate STB/d or Mscf/d / Sm³/d Read from the header unit, e.g. "Oil rate (STB/d)".
Flowing pressure psia / bara Optional third column.

Zero or near-zero rates are treated as downtime and excluded from the fit automatically.

Forecast limits

Input Unit Typical value
Economic limit STB/d, Mscf/d / Sm³/d 5 STB/d or 50 Mscf/d (1 Sm³/d oil in Metric)
Terminal decline %/yr effective 6 %/yr. Used by the modified hyperbolic only.
Time cap years 30
Max b dimensionless 2. Upper bound on b for Arps and modified hyperbolic.

These values carry a Typical value badge until you edit them.

Rate transient (FMB)

Input Unit Notes
Rate and pressure table days, STB/d or Mscf/d, psia Three columns: t, rate, flowing bottomhole pressure.
Fluid – Oil, or Gas (project fluid).
Initial pressure psia / bara Typical 4,500 psia (300 bara).
Total compressibility 1/psi / 1/bar Typical 1.5e-5 1/psi (2e-4 1/bar).
Swi fraction
Net pay h, Porosity, Oil viscosity, Oil FVF, Wellbore radius ft, fraction, cp, rb/STB, ft Used by the type-curve match and linear-flow analysis.
Boundary-dominated window From / To days Optional override of the automatic window.

Methods

  • Arps (1945) exponential, hyperbolic and harmonic.
  • Modified hyperbolic (Robertson 1988): hyperbolic until the nominal decline falls to the terminal decline, exponential after that. Finite EUR for any b.
  • Duong (2011), SPE 137748.
  • Stretched exponential (SEPD): Valkó (2009), Valkó & Lee (2010).
  • Fitting: weighted least squares on ln q. Outliers are handled by iteratively reweighted least squares with Tukey's biweight on the standardised log residual. Downtime is removed before fitting. The search is bounded differential evolution with a Nelder-Mead polish.
  • Model ranking by AIC on the same data. The lowest-AIC model is starred.
  • Probabilistic EUR: moving-block residual bootstrap (Künsch 1989; Jochen & Spivey 1996), with residuals rescaled for the points that most influence the fit, a block length that follows the residual autocorrelation, and a log-normal draw of the terminal decline on each resample.
  • Type wells: align at peak or first production, flag outlier wells by a median-based z-score of peak rate and first-year cumulative, optionally normalise by a basis column, and fill younger wells forward from their own decline to remove survivor bias.
  • Batch decline: each well fitted with one model or the lowest-AIC model per well, with QC flags for too few points, short history, b above 1 (Arps) or 1.5 (modified hyperbolic), b on its bound, heavy outlier down-weighting, rate R² below 0.7, EUR cut by the time cap, and a rate step inside the fitted record.
  • Rate-transient diagnostics: material-balance time (Blasingame, McCray & Lee 1991; Palacio & Blasingame 1993), rate-normalised pressure and its derivative, the Blasingame q/Δp integral and integral derivative, and the Agarwal-Gardner inverse derivative (1999).
  • Flowing material balance: the Agarwal-Gardner normalised form for oil, and Mattar & McNeil (1998) for gas.
  • Type-curve match (oil): closed-circle Agarwal-Gardner q/Δp and NPI overlays, fitting permeability, drainage area and skin, and giving N.
  • Square-root-of-time linear flow: xf√k for a two-wing fracture and Ac√k.

Workflow

  1. Open Decline & RTA and use Paste production history, or paste on the Rate data tab and press Apply. Set Well name and Fluid.
  2. Open Decline fit. Pick the Decline model. To switch to the starred model, press Use … (lowest AIC). Leave Automatic outlier detection on unless you have a reason. Click points on the chart to exclude or force them in.
  3. Check Fit period. If the page detects an operating change, press Fit from day X or Fit from here beside a listed event. Fit the whole record instead undoes it.
  4. Set Forecast limits (applied to the EUR).
  5. Open EUR & uncertainty. Set Resamples (default 200) and Terminal-decline uncertainty (1σ) (default 25 %), then press Run bootstrap.
  6. For a group of wells, open Type well, paste a long-format table (well, time, rate, optional basis), and choose Alignment, Curve (Mean or P50), the outlier z-score threshold and normalisation.
  7. For a field, open Batch (field), choose the Batch model (Best AIC per well or one model) and press Fit n wells (n is the well count). It uses the wells pasted on the Type well tab.
  8. For RTA, open Rate transient (FMB), paste t, q and pwf, and set the reservoir and model inputs.

Interpreting results

  • EUR to limit says whether the economic limit or the time cap stopped the forecast. Remaining is EUR minus production to date.
  • R² rate / cumulative and Flagged points show fit quality. A high outlier count usually means an operating change, not noise. Fit from the change instead.
  • P90 (low), P50 and P10 (high) come from the bootstrap. The P10/P90 ratio shows the width of the range. Compare with Model spread across all models: model choice is often a larger source of uncertainty than noise.
  • Type-curve EUR shows where the curve rests on forecasts rather than real data; the well-count chart shows how many wells have data at each time.
  • N (flowing MB) (or G) is valid only in boundary-dominated flow. BDF points shows how many points the module flagged as boundary-dominated.

Common pitfalls

Exports

  • QC table (CSV) on the Batch (field) tab downloads the per-well results.
  • Sending a well from the Data module to Decline saves a version of the existing analysis first.