Arte SheetsLearn. Try. Understand.

Petroleum & Geothermal Wellbore Hydraulics, API Hole Cleaning & Equivalent Circulating Density

Drilling Annular Velocity, Cuttings Transport & ECD Formula

Calculate Open-Hole Annular Mud Velocity Va (m/min), Net Upward Cuttings Rise Velocity (m/min), Sifferman Cuttings Transport Ratio Ft (%), and Equivalent Circulating Density ECD (SG).

Wash out an 8.5-inch shale borehole to 12.25 inches on one mud pump and cuttings fall BACKWARD onto your BHA—sticking the drillstring!

During rotary/PDC oilwell and geothermal drilling, mud pumped at `Q` (`L/min`) jets out bit nozzles and returns up the concentric annulus between **Open-Hole Diameter `D_h`** (`mm`) and **Drillpipe Outer Diameter `D_p`** (`mm`, Cross-Sectional Area `A_{ann} = (PI() / 4) * ((D_h / 1,000)^2 - (D_p / 1,000)^2)` m²) at **Mean Annular Velocity `V_a = (Q / 1,000) / A_{ann}`** (`m/min`)! Meanwhile, dense `2.65`-SG rock cuttings settle downward relative to the rising mud at ** hindered Cuttings Slip Velocity `V_s`** (`m/min`): hence **Net Upward Cuttings Rise `V_{net} = V_a - V_s`** (`m/min`) and **Sifferman Cuttings Transport Ratio `F_t = ((V_a - V_s) / V_a) * 100%`** MUST stay **`>= 50%–55%`** (`V_a >= 2 * V_s`) for clean hole transport (`F_t <= 0%` means cuttings sink and pack off the bottomhole assembly!). Simultaneously, **Annular Friction Pressure Loss `Delta_P_a`** (`kPa`) adds to Static Mud Specific Gravity `SG_{mud}` over True Vertical Depth `TVD` (`m`), raising bottomhole **Equivalent Circulating Density `ECD = SG_{mud} + Delta_P_a / (9.80665 * TVD)`** (`SG`) toward the formation fracture gradient!

Verify on an `8.5`-inch (`215.9` mm) Production Hole with `5`-inch (`127.0` mm) Drillpipe—Mud_Pump_Rate `Q` = 2,400 L/min (B2), Hole_ID `D_h` = 215.9 mm (B3), Drillpipe_OD `D_p` = 127.0 mm (B4), Cuttings_Slip_Velocity `V_s` = 18.5 m/min (B5), Static_Mud_Weight `SG` = 1.320 (B6), Annular_Friction_Loss `Delta_P_a` = 1,850 kPa (B7), and `TVD` = 2,850 m (B8): Annular Mud Velocity reaches `100.24` m/min (E2), Net Cuttings Rise equals `81.74` m/min (E3), Transport Ratio hits a brisk `81.54%` (E4), and Bottomhole `ECD` equals `1.386` SG (E5)!

API Hole-Cleaning & ECD KPI (Dp=127 mm, Vs=18.5 m/min, SG=1.32, TVD=2,850 m)FormulaVerified Output
Annular Mud Velocity Va (m/min)(Flow_L_min / 1000) / ((PI()/4)*(Dh^2 - Dp^2))100.24 m/min (18.14 m/min @ washout!)
Net Cuttings Rise Velocity (m/min)Annular_Vel_Va - Cuttings_Slip_Vs81.74 m/min (-0.36 m/min SINKING!)
Cuttings Transport Ratio Ft (%)((Va - Vs) / Va) * 100 (>= 55% clean hole)81.54% (-1.98% PACK-OFF STUCK PIPE!)
Equivalent Circulating Density (SG)Static_SG + Annular_dP_kPa / (9.80665 * TVD_m)1.386 SG (+0.066 SG dynamic friction)

API RP 13D Annular Hole-Cleaning Transport Ratio & Dynamic ECD Formula

Validate `Pump_Flow Q > 50` L/min, `Drillpipe_OD >= 40` mm, `Hole_ID >= Drillpipe_OD + 20` mm, `Slip_Velocity V_s >= 0` m/min, `Static_SG` in `[0.80, 2.60]`, `Annular_dP >= 0` kPa, and `TVD >= 100` m!

=LET(qm_l, B2, dh_m, B3, dp_m, B4, vs_m, B5, sg_m, B6, fp_k, B7, tv_m, B8, IF(OR(qm_l <= 50, dp_m < 40, dh_m < dp_m + 20, vs_m < 0, sg_m < 0.8, sg_m > 2.6, fp_k < 0, tv_m < 100), "Invalid Annular Input", ROUND(sg_m + (fp_k / (9.80665 * tv_m)), 3)))

12.25-Inch Shale Washout on Single Triplex Pump (`Q = 1,150` L/min, `D_h = 311.2` mm) Pack-Off Check

Take one mud pump offline for liner maintenance (`B2 = 1150` L/min) across an enlarged `12.25`-inch (`B3 = 311.2` mm) shale washout: Annular Velocity E2 collapses `5.5x` to `18.14` m/min—slower than `18.5` m/min Cuttings Slip! Net Rise E3 turns negative (**`-0.36` m/min**, Transport Ratio E4 = **`-1.98%`**), avalanching cavings back onto the drill collars!

=IF(ISTEXT(E5), E5, LET(aa_m, (PI() / 4) * (((B3 / 1000) ^ 2) - ((B4 / 1000) ^ 2)), va_m, (B2 / 1000) / aa_m, ROUND(((va_m - B5) / va_m) * 100, 2)))

Try the example

Use the original values or change them to test your understanding.

Further reading