🔒

Your 90-day free save period has ended

Nothing is lost — your inputs are still right here on screen. Upgrade to Pro to unlock Save & Open again.

€19.99 / month · cancel anytime
🔓 Unlock Save & Open — Go Pro

💾 Save your case

Give your file a name that makes it easy to identify later — include the line number, doc no., or revision.

📁 File will save as: GasLine_file.json
💡 The revision part is pre-selected — just type a new revision number to update it.
Special characters are replaced automatically.
💾
Free save period active
Save your case now — you get 90 days free from your first save.
Go Pro
IH
In the Heat of Process
Gas & Vapour Equivalent Length & Line Sizing Calculator — intheheatofprocess.nl
Calculator Tool — Compressible Flow

Gas & Vapour Line Sizing & Pressure Drop Calculator

GPSA-style worksheet — fittings as rows, pipe segments as columns, segments connected by From/To labels so a line can branch into a network. Equivalent length feeds Darcy-Weisbach with the Churchill (1977) friction factor; the density and velocity basis used in the pressure-drop equation is picked per segment from that segment's own ΔP relative to its inlet pressure: inlet (upstream) conditions below 10 %, an iterative average of inlet and outlet between 10 % and 40 %, and flagged as not applicable above 40 %.

Le = Σ N × (Le/D) × D  ·  Re = 4ṁ/(π·dᵢ·η)  ·  ΔP = (8/π²)·λ·L·ṁ²/(ρ·dᵢ⁵)  ·  λ = Churchill  ·  V = 131·Z·Q·T/(P·dᵢ²)
Rough estimation only — not for accurate final design. This is a simplified, single/average-property method for compressible flow, intended for a quick preliminary pass. It stops being valid once a segment's pressure drop exceeds roughly 40 % of its own inlet pressure — density and velocity change too much along that segment for this method, and it is flagged in red where that happens. For any case needing an accurate pressure drop (large ΔP, long lines, critical/choked flow, control valve or relief sizing), use a proper compressible-flow / process simulation program instead. A single gas temperature is assumed for the whole network (no cooling/heating along the line) unless you know otherwise.

Building a network / branches: the "From" and "To" fields connect segments — they're labels, not fixed positions. To branch, add a segment and set its "From" to an existing node's label. Mass flow (ṁ) is entered per segment and is conserved through branches — the tool shows how much of the upstream budget is left at each node and flags it in red if a branch point's outgoing flows exceed what's coming in.
Grand Total Equivalent Length — All Pipe Segments
0,0
meters
Straight Length
0,0 m
Valves & Fittings Eq. Length
0,0 m
Critical End Pressure — Lowest Across All Branch Endpoints
0,000
bar abs  Outlet
Starting Pressure
0,000 bar abs
Σ Friction ΔP (all segments)
0,000 bar
Σ Friction ΔP
0,0 kPa
Σ Static Head ΔP (approx.)
0,000 bar
Σ Velocity Head ΔP
0,000 bar

Gas / Vapour Properties

Applied to all segments
P₀ is the available absolute pressure at the start of the line (point A). ṁ₀ is the total mass flow available at that point — mass flow, not volumetric flow, is what's conserved through branches, so it's what you split between them. Density is evaluated at each node from ρ = P·M/(Z·R·T) using a single T for the whole network (isothermal assumption — enter a lower T if you expect significant cooling downstream). Selecting a Service fills in a typical Table-4-style velocity range; for "Air / other gases" velocities up to 60 m/s are still flagged OK provided ρv² ≤ 50,000 kg/(m·s²). Velocity is checked at each segment's outlet, where density is lowest and velocity highest. See the reference panel below for roughness and other pipe materials.

Line Schematic

From → To
Show on drawing:

Gas & Vapour Line Sizing Worksheet

Le = N × (Le/D) × D  →  ΔP = (8/π²)·λ·L·ṁ²/(ρ·dᵢ⁵)
Method — How the Density Basis Is Chosen Per Segment
Segment ΔP / segment inlet pressureDensity & velocity basisBadge
< 10 %Inlet (upstream) density and velocity — single pass, no iteration<10%
10 % – 40 %Average of inlet and outlet conditions, solved iteratively (the outlet condition depends on ΔP itself)10–40%
> 40 %Not applicable — density change too large for this method; result shown for reference only>40%
Classification is per segment, using that segment's own inlet pressure (from the running pressure profile), not the network's starting pressure P₀. Reynolds number and the Churchill friction factor are evaluated directly from mass flow and are independent of density, so no iteration is needed for those — only the density term in the ΔP equation is iterated.
Valve & Fitting Equivalent Length (Le/D) Reference — GPSA-style Method
CategoryType of valve / fittingLe/D
Le/D values are fixed ratios per fitting/valve type ("Valve and fitting equivalent length" — a GPSA-style method). D is the nominal pipe diameter (D = NPS × 25.4 mm, e.g. 8" → 203.2 mm); for reducing fittings, D is the large-end nominal diameter and d is the small-end nominal diameter. Pick the row matching each fitting and enter the quantity in the worksheet, or use a "User Defined" row for anything not covered. This is a quick-scan reference — always confirm values against your own project standard.
Line Sizing Method & Pipe Roughness Reference

Density (real gas): ρ (kg/m³) = P·M / (Z·R·T) — P in Pa (abs), M in kg/kmol, R = 8314.5 J/(kmol·K), T in K
Reynolds number (mass-flow form, density-independent): Re = 4·ṁ / (π·dᵢ·η)
Churchill friction factor (valid for laminar, transitional and turbulent flow):
λ = 8 × [ (8/Re)¹² + 1/(A+B)^1.5 ]^(1/12)
A = { 2.457 × ln[ 1 / ((7/Re)^0.9 + 0.27·ε/dᵢ) ] }¹⁶    B = (37530/Re)¹⁶
Friction pressure drop (mass-flow form): ΔP (Pa) = (8/π²) × λ × L × ṁ² / (ρ · dᵢ⁵)    ρ per the density-basis method above
Static head (elevation, approximate): ΔP_static ≈ ρ_avg · g · H   — H = elevation change (m), positive going up; gas columns are usually a minor term compared to friction, shown here only as a rough check
Velocity Head ΔP (dynamic) — applied at diameter transitions between segments, using the shared node density: ΔP_dynamic = ½ρ(v_prev² − v_this²)
Pressure profile, carried segment to segment from the starting pressure P₀: P_in(segment) = P_out(previous) + ΔP_dynamic    P_out(segment) = P_in(segment) − ΔP_friction − ΔP_static
L is each segment's total equivalent length (straight + fittings) from the worksheet above.

Velocity check — SI units (used against the rule-of-thumb velocity ranges below)
V = 131 · Z · Q · TP · dᵢ²
V = velocity (m/s)  ·  Z = compressibility factor (–)  ·  Q = standard-condition volumetric flow rate (Sm³/h)  ·  T = absolute temperature (K)  ·  P = absolute pressure (kPa)  ·  dᵢ = pipe internal diameter (mm). Equivalent to v = ṁ / (ρ·A) evaluated with local density, cross-checked at each segment's outlet where density is lowest and velocity is highest.
Pipe materialAbsolute roughness ε (mm)
Typical absolute roughness values for preliminary sizing — always confirm with your project's piping material specification.

Preliminary Velocity Guidelines — Rule of Thumb

ServiceTypical range
Air / other gases (non-corrosive, non-erosive)10 – 20 m/s (up to 60 m/s if ρv² ≤ 50,000 kg/(m·s²))
Saturated steam (dry)15 – 30 m/s
Superheated steam30 – 60 m/s
Vacuum piping10 – 100 m/s
Disclaimer: These are generic, rounded rule-of-thumb figures for a quick preliminary sizing pass only — not values from any specific company, licensor, or industry-code specification. Suitable ranges vary significantly with fluid, material, service, and criticality. Always confirm against your own project's design basis and piping specification before finalizing a line size, and use a rigorous compressible-flow calculation wherever this method is flagged as not applicable.

How to Use This Calculator

1

What this tool does

This is a single worksheet that takes a gas or vapour pipe route from start to finish (or a whole branching network) and, per pipe segment, works out:

  • The equivalent length of every valve and fitting on that segment, using the GPSA-style Le/D method
  • The resulting inlet and outlet velocity and whether the outlet (worst-case) falls inside your target range
  • The friction pressure drop (Darcy-Weisbach with the Churchill correlation, valid for laminar through turbulent flow), using mass flow so Reynolds number and the friction factor don't need density at all
  • Which density basis applies to that segment's own ΔP — see Step 6
  • A running pressure profile from your starting pressure all the way to every branch endpoint

It works for one straight line or for a network with multiple branches off any point.

Rough estimation only. This tool stops being valid once a segment's own ΔP exceeds roughly 40% of its inlet pressure — density and velocity change too much along that segment. Always check the result against your own project's engineering standards, and switch to rigorous compressible-flow software wherever the >40% badge appears.
2

Set your Gas / Vapour Properties first

Before touching the worksheet, fill in the Gas / Vapour Properties panel near the top — these apply to every segment in the whole network:

FieldWhat it's for
Starting Pressure P₀The available absolute pressure (bar abs) at the very start of the line — the pressure profile counts down from here.
Total Starting Mass Flow ṁ₀kg/h. Mass flow, not volumetric flow, is conserved through branches — this is the budget the flow-budget check (Step 8) works from.
Gas Temperature T°C. A single value is used for the whole network (isothermal assumption) — lower it if you expect significant cooling downstream.
Molecular Weight M / Compressibility ZUsed with T and the local pressure to get density at every node: ρ = P·M/(Z·R·T).
Dynamic Viscosity ηcP (= mPa·s).
Pipe Roughness εmm, absolute roughness — see the reference table (Step 13) for other materials.
ServicePicks a typical velocity range (Table-4-style) and fills Target Velocity Min/Max — still editable afterwards.

You can come back and change any of these later — everything recalculates instantly.

3

Build your first pipe segment

Each pipe segment is one column in the worksheet. Click + Add Pipe Segment at the bottom of the worksheet to add one, or edit an existing column directly.

For each segment, fill in:

  • Nominal Size (NPS) and Schedule — pipe data (OD, WT, ID, and nominal diameter D = NPS × 25.4 mm) fills in automatically from ASME B36.10M
  • P&ID nr — optional, for your own reference
  • From and To — free-text node labels (e.g. A, B). These are what connect segments together — see Step 7
  • Pipe straight Length (m) and Elevation change (m) — positive going up, negative going down
  • Gas Mass Flow ṁ (kg/h) — auto-suggested for you, see Step 8
Tip: a new segment's "From" defaults to the previous segment's "To" — a straight continuation needs no extra typing. You only need to touch "From" when you want to branch off an earlier point.
4

Fill in the fittings worksheet

Below the header rows, every valve and fitting from the GPSA-style Le/D reference is listed as its own row, grouped into collapsible sections:

Valves (Fully Open)FittingsEnlargement ContractionMiscellaneousUser Defined

Click any section's header to fold or unfold it — use ⊞ Expand All Sections / ⊟ Collapse All Sections above the table to jump between a full view and a compact one.

For each fitting you have on a segment, type the quantity in that segment's column. The equivalent length for that row (count × Le/D × D) appears automatically next to the input.

Anything not covered by the standard list goes in one of the three User Defined rows: give it a label, a quantity, and its own Le/D ratio.

Reducing fittings. For enlargements and contractions, D is the large-end nominal diameter — the tool uses the segment's own nominal size for this.
5

Read the totals & results

RowMeaning
TOTAL Le/DΣ (quantity × Le/D) across every fitting on that segment — dimensionless
TOTAL VALVES & FITTINGS EQ. LENGTHThe above × the segment's nominal diameter, in metres
TOTAL EQUIVALENT LENGTHStraight pipe length + fittings equivalent length — becomes "L" in the pressure drop calc
Velocity v₁ → v₂, Density ρ₁ → ρ₂, Actual Volumetric Flow Q₁ → Q₂Inlet and outlet values — density is lowest and velocity/volumetric flow highest at the outlet, which is what's checked against the target range
Re, ε/dᵢ, λInputs to and output of the Churchill friction factor correlation — computed directly from mass flow, no density needed
Friction Pressure Drop ΔP, % of inlet pressureDarcy-Weisbach using the segment's total equivalent length, and that ΔP as a fraction of the segment's own inlet pressure
Static Head ΔP (approx.)ρ·g·H from the segment's elevation change — usually a minor term for gas, shown as a rough check
Velocity Head ΔP (dynamic)The Bernoulli term — appears where the pipe size changes from the previous segment
Pressure In / OutThe running absolute pressure at each end of the segment
6

The density basis badge (<10% / 10–40% / >40%)

Because gas density changes with pressure, the pressure-drop equation needs to know which density to use — and that's picked per segment, from that segment's own ΔP as a fraction of its own inlet pressure (not the network's starting pressure P₀):

Segment ΔP / inlet pressureDensity & velocity basis
< 10%Inlet (upstream) density and velocity — single pass, no iteration. Badge is green.
10% – 40%Average of inlet and outlet conditions, solved iteratively (the outlet condition depends on ΔP itself). Badge is orange.
> 40%Not applicable — density change too large for this method; the number is shown for reference only. Badge is red, and it also colours that segment's pipe on the schematic.
Any red badge means: don't use that segment's ΔP for real design — resize the line, shorten it, or reduce flow, or switch to rigorous compressible-flow software.
7

Branch into a network

"From" and "To" are just labels — they're what connects segments, not their position in the worksheet. To split a line into two, add a new segment and set its From to a node that's already used as another segment's To. Both segments now branch from that same point.

P-1001 (A → B) A B P-1002 (B → C) C P-1003 (B → D) D P-1002 and P-1003 both have From = B
Two segments sharing "From = B" — the network branches at B into C and D.

Add as many branches as you need, at any point, to any depth. Each branch is calculated independently from its own branch point's pressure, density and velocity.

8

Let the mass-flow budget auto-fill

Under every Gas Mass Flow ṁ field there's a small live figure showing what's left of the flow budget at that node — it walks the same From/To connections, starting from ṁ₀ at the source.

Whenever you set or change a segment's "From", its flow field is auto-filled with whatever's currently left at that node — a starting suggestion you're free to type over.

ExampleResult
ṁ₀ = 5000 kg/h, first segment set to 5000"0,0 kg/h left (of 5000,0)" — green, balanced
Add a branch, type 3000 for itNext branch from the same node auto-fills 2000 (5000 − 3000)
A node's branches add up to more than what's coming inRed "⚠ over by X kg/h" warning on the offending branch
Not automatic mass balance. The tool checks and warns, but it won't force your numbers to add up — that's still on you.
9

Check the pressure profile

Near the top of the page, the Critical End Pressure panel shows the lowest absolute pressure found across every branch endpoint — the branch with the most equivalent length and the highest pressure drop naturally shows up here as the worst case, flagged in red if it drops to zero or below.

End pressure at or below zero means the starting pressure can't overcome the drop on that branch (or the segment is choked) — increase P₀, upsize the piping, or reduce flow.
10

Use the Line Schematic

The diagram redraws itself from your From/To connections — flat pipes for zero elevation change, straight up for positive elevation, straight down for negative. Branches fan out automatically with a dashed connector showing they share the same node. Each pipe's outlet ΔP label is colour-coded to match its density-basis badge (green/orange/red), and a segment in the >40% or invalid state draws its pipe outline in red too.

Above the drawing:

  • Include drawing in print — untick this to leave the diagram out of your PDF/print output
  • Show on drawing — toggle Size, Length, Elevation, Flow, Velocity, ΔP, and Node Pressure individually, or all at once
11

Save, Open, and Autosave

  • 💾 Save — downloads your whole worksheet as a .json file
  • 📂 Open — loads a previously saved .json file back in
  • Autosave — your work is also saved automatically to this browser as you go; reopening the tool offers to restore it
  • ↺ Reset — clears everything back to the worked example
Tip: save a .json file for each line or project, so you can reopen and continue exactly where you left off.
12

Print vs. Export to Excel

🖨 Print / PDF

Gives you a clean report: your inputs, the results, a compact summary of only the fittings actually used, and the schematic if switched on. The full fittings worksheet (all the zero rows) is left out to keep the printout short.

In the print dialog, make sure "Background graphics" is switched on — otherwise the navy and orange highlighted rows will print blank.

📊 Export Excel

Downloads a fully-styled .xlsx workbook with three tabs: the complete worksheet (every fitting row, plus every result row including the density basis and velocity/volumetric-flow figures), a Fittings Summary, and a Gas Properties & Endpoints sheet. Use this when you want to reformat, filter, or lay the data out your own way.

13

Reference panels & limits

Three collapsible panels sit below the worksheet:

  • Method — the same <10% / 10–40% / >40% table as Step 6
  • Valve & Fitting Equivalent Length (Le/D) Reference — every Le/D value used in the worksheet
  • Line Sizing Method & Pipe Roughness Reference — the full set of equations, a roughness table, and rule-of-thumb velocity ranges by service
  • This is a preliminary / quick-scan tool — always verify against your project's own engineering standards before it goes into a deliverable.
  • It handles branching networks but does not solve a coupled hydraulic network — each branch is evaluated independently from its own branch point.
  • Single-phase gas/vapour only — not for two-phase, choked/sonic, or highly variable-compressibility flow.
  • A single gas temperature is assumed for the whole network (isothermal) unless you know better and adjust it.
  • Le/D values come from a GPSA-style table; anything unusual belongs in a User Defined row with your own value.