Home / Plumbing / Drain Pipe Sizing
Plumbing

Drain Pipe Sizing Calculator (DFU)

Tally drainage fixture units (DFU) for a common residential fixture set and compare against IPC Table 710.1(2) horizontal fixture branch capacity by pipe size.

Total drainage fixture units0 DFU
Reference minimum pipe size1-1/2"

How this is calculated

Every drain fixture is assigned a Drainage Fixture Unit (DFU) value representing its relative discharge load — 1 DFU corresponds to roughly 1 cubic foot of water per minute through a 1¼" pipe. Total DFU for a branch or drain is the sum of every connected fixture's DFU value (IPC Table 709.1-style values used here).

Pipe sizeReference max DFU
1-1/2"3
2"6
2-1/2"12
3"20
4"160
5"360
6"620

Two rules apply independent of the DFU count: any branch or drain serving at least one water closet must be a minimum of 3" regardless of how low the DFU total is, and a 3" branch is capped at two water closets regardless of remaining DFU capacity. This calculator enforces both.

For estimation and reference only. Pipe sizing tables differ meaningfully between the IPC, UPC, and local amendments — more than most other calculators on this site. The DFU values and pipe-size capacities above match IPC Table 709.1 and Table 710.1(2), but this is a reference comparison, not a final design. Building drain, branch, vent, and stack sizing (including slope, developed length, and venting requirements) must be verified against the plumbing code actually adopted in your jurisdiction — ideally by a licensed plumber or your local plumbing inspector — before any real installation. Getting DWV sizing wrong risks sewage backup and failed inspections, so treat this tool as a starting tally, not an approval.

How this calculator works

IPC Table 709.1 fixture drainage units and IPC Table 710.1(2) horizontal branch capacity, including the 3" minimum for any drain serving a water closet. European mode: EN 12056-2 System I, discharge units (Table 2), frequency factor K (Table 3), Qww = K × √ΣDU, and stack capacity with primary ventilation (Table 11).

Worked example

A bathroom with a toilet (3 DFU), a lavatory (1 DFU) and a bathtub (2 DFU).

Total = 6 DFU. On DFU alone a 2" horizontal branch (6 DFU max) would carry it, but any branch serving a water closet must be at least 3", so the reference minimum is 3".

A kitchen group without a toilet — lavatory, kitchen sink and dishwasher — totals 5 DFU and fits a 2" branch.

Frequently asked questions

What is a drainage fixture unit (DFU)?

A DFU is a relative measure of how much a fixture discharges into the drain system. Codes assign each fixture type a value — a toilet is 3, a lavatory is 1 — and the pipe size is chosen from the total.

What size drain does a toilet need?

Under the IPC, any drain or branch serving a water closet must be at least 3", and a 3" horizontal branch can serve no more than two water closets.

Is 2" pipe enough for a kitchen sink?

For a horizontal fixture branch, 2" carries up to 6 DFU under IPC Table 710.1(2), which covers a kitchen sink and dishwasher. Check your local code — the UPC and local amendments differ.

Does this size vents too?

No. Vent sizing, slope and developed length have separate rules. This calculator only compares the DFU total against horizontal branch capacity.

Common mistakes

  • A water closet on a 2" or smaller drain. Any horizontal branch serving a water closet must be at least 3", whatever the fixture-unit total.
  • Reducing the pipe size downstream. Drain pipes never get smaller in the direction of flow.
  • Assuming vents are sized too. This calculator sizes drains only. Vent sizing has its own tables.
  • European mode: the wrong frequency factor. K depends on how the building is used: 0.5 for dwellings and offices, 0.7 for hospitals, schools, restaurants and hotels, 1.0 for public toilets and showers.

What it does not cover

Vent sizing, building drains and stacks, and local plumbing code amendments.

Sources

Last reviewed:

Related calculators

Embed this calculator

Free to use on your own website, blog, or training material — paste this code where you want the calculator to appear.