{
  "slug": "cost-to-add-a-bathroom-calculator",
  "title": "Cost to Add a Bathroom Calculator",
  "heading": "Cost to Add a Bathroom Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/cost-to-add-a-bathroom-calculator",
  "summary": "Rough-in distance, fixture grade and slab work priced separately.",
  "description": "Adding a bathroom is a plumbing project wearing a tile costume. The fixtures are the visible cost and rarely the deciding one — what moves the number is how far the new drain sits from the existing stack, whether the floor is a slab that has to be cut and repoured, and whether the space already exists or has to be framed out of a closet or a corner of a bedroom. This calculator prices those separately so you can see the trade: moving a half bath ten feet closer to the stack often saves more than downgrading every fixture. Worked assumption for the defaults: a full bath in existing space, 12 ft from the stack, mid-grade fixtures, wood-framed floor, ventilation and electrical included, 15% contingency — about $17,000 nationally and about $23,500 in a West Coast metro.",
  "formula": "Total = (base by bathroom type × regional index + drain run × cost per foot + slab cutting + framing + fixture upgrade) × (1 + contingency).",
  "dateModified": "2026-09-06",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=cost-to-add-a-bathroom-calculator",
  "inputs": [
    {
      "id": "type",
      "label": "Bathroom type",
      "kind": "select",
      "hint": null,
      "default": "12500",
      "options": [
        {
          "value": "7500",
          "label": "Half bath (toilet + sink) — $7,500 base"
        },
        {
          "value": "12500",
          "label": "Full bath with tub/shower — $12,500 base"
        },
        {
          "value": "19000",
          "label": "Primary bath with double vanity and walk-in shower — $19,000 base"
        }
      ]
    },
    {
      "id": "region",
      "label": "Region",
      "kind": "select",
      "hint": "Applies a regional labor-and-bid multiplier to the whole job.",
      "default": "1",
      "options": [
        {
          "value": "1",
          "label": "US national average — 1.00×"
        },
        {
          "value": "0.86",
          "label": "Rural / small town — 0.86×"
        },
        {
          "value": "0.94",
          "label": "South metro (Atlanta, Dallas, Tampa) — 0.94×"
        },
        {
          "value": "1.02",
          "label": "Midwest metro (Columbus, KC, Minneapolis) — 1.02×"
        },
        {
          "value": "1.14",
          "label": "Mountain West (Denver, Phoenix, Salt Lake) — 1.14×"
        },
        {
          "value": "1.28",
          "label": "Northeast metro (Boston, Philly, DC) — 1.28×"
        },
        {
          "value": "1.38",
          "label": "West Coast metro (Seattle, LA, Portland) — 1.38×"
        },
        {
          "value": "1.55",
          "label": "Highest-cost metro (SF Bay, Manhattan) — 1.55×"
        }
      ]
    },
    {
      "id": "drainFeet",
      "label": "Distance from existing drain stack",
      "kind": "number",
      "hint": null,
      "default": 12,
      "unit": "ft",
      "min": 0,
      "max": 120
    },
    {
      "id": "drainRate",
      "label": "Drain and supply run cost",
      "kind": "number",
      "hint": null,
      "default": 190,
      "unit": "$/ft",
      "min": 60,
      "max": 600
    },
    {
      "id": "slab",
      "label": "Floor construction",
      "kind": "select",
      "hint": null,
      "default": "0",
      "options": [
        {
          "value": "0",
          "label": "Wood-framed floor — no slab work"
        },
        {
          "value": "3800",
          "label": "Concrete slab — cut, trench and repour: $3,800"
        }
      ]
    },
    {
      "id": "framing",
      "label": "Framing new walls / stealing closet space",
      "kind": "number",
      "hint": null,
      "default": 0,
      "unit": "$",
      "min": 0,
      "max": 40000
    },
    {
      "id": "fixtureUpgrade",
      "label": "Fixture and finish grade",
      "kind": "select",
      "hint": null,
      "default": "0",
      "options": [
        {
          "value": "0",
          "label": "Mid-grade — included in base"
        },
        {
          "value": "4200",
          "label": "Upgraded tile and fixtures — +$4,200"
        },
        {
          "value": "11000",
          "label": "High-end (stone, custom glass, heated floor) — +$11,000"
        }
      ]
    },
    {
      "id": "contingency",
      "label": "Contingency",
      "kind": "number",
      "hint": null,
      "default": 15,
      "unit": "%",
      "min": 0,
      "max": 35
    }
  ],
  "outputs": [
    {
      "id": "total",
      "label": "Cost to add the bathroom",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "base",
      "label": "Base bathroom build",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "drain",
      "label": "Plumbing run to the stack",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "slab",
      "label": "Slab cutting and repour",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "upgrade",
      "label": "Fixture and finish upgrade",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "reserve",
      "label": "Contingency reserve",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "drainShare",
      "label": "Share of hard cost that is plumbing distance",
      "format": "percent",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Bathroom type: Full bath with tub/shower — $12,500 base",
      "Region: US national average — 1.00×",
      "Distance from existing drain stack: 12 ft",
      "Drain and supply run cost: 190 $/ft",
      "Floor construction: Wood-framed floor — no slab work",
      "Framing new walls / stealing closet space: 0 $",
      "Fixture and finish grade: Mid-grade — included in base",
      "Contingency: 15 %"
    ],
    "outputs": [
      "Cost to add the bathroom: $16,997",
      "Base bathroom build: $12,500",
      "Plumbing run to the stack: $2,280",
      "Slab cutting and repour: $0",
      "Fixture and finish upgrade: $0",
      "Contingency reserve: $2,217",
      "Share of hard cost that is plumbing distance: 15.4%"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter bathroom type.",
      "Enter region — Applies a regional labor-and-bid multiplier to the whole job..",
      "Enter distance from existing drain stack (ft).",
      "Enter drain and supply run cost ($/ft).",
      "Enter floor construction.",
      "Enter framing new walls / stealing closet space ($).",
      "Enter fixture and finish grade.",
      "Enter contingency (%).",
      "Read your cost to add the bathroom on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "type": "12500",
        "region": "1",
        "drainFeet": 7,
        "drainRate": 110,
        "slab": "0",
        "framing": 0,
        "fixtureUpgrade": "0",
        "contingency": 9
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "type": "12500",
        "region": "1",
        "drainFeet": 12,
        "drainRate": 190,
        "slab": "0",
        "framing": 0,
        "fixtureUpgrade": "0",
        "contingency": 15
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "type": "12500",
        "region": "1",
        "drainFeet": 19,
        "drainRate": 300,
        "slab": "0",
        "framing": 0,
        "fixtureUpgrade": "0",
        "contingency": 24
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "Why does distance from the stack matter so much?",
      "a": "Drain lines need continuous fall — about a quarter inch per foot — plus venting. Long runs mean opening more floor, more joist drilling or a new vent through the roof, and sometimes a pump if gravity will not cooperate."
    },
    {
      "q": "Does adding a bathroom raise my home value?",
      "a": "Usually, especially going from one bathroom to two, though recovery at resale is typically partial rather than full. The stronger argument is livability; treat value recovery as a bonus."
    },
    {
      "q": "Is a macerating toilet cheaper than a proper drain?",
      "a": "Up front, often yes — it avoids slab cutting. Long term you own a pump that can fail and some buyers discount it. Price both paths before deciding."
    },
    {
      "q": "Where does the regional multiplier come from?",
      "a": "It is a job-level index against a US national average of 1.00, built from the spread contractors quote between low-cost rural markets and the highest-cost coastal metros. Materials vary less than labor, but bids move together, so one index tracks real quotes better than splitting them. Swap in your own multiplier by picking the tier closest to two bids you already have."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/cost-to-replace-a-sewer-line-calculator",
    "https://www.revenuelab.fyi/toolbox/cost-to-build-a-home-addition-calculator"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Cost to Add a Bathroom Calculator (https://www.revenuelab.fyi/toolbox/cost-to-add-a-bathroom-calculator)"
}