{"id":186,"date":"2026-07-12T05:11:26","date_gmt":"2026-07-12T05:11:26","guid":{"rendered":"https:\/\/squarefootcalc.com\/blog\/?p=186"},"modified":"2026-07-12T18:15:33","modified_gmt":"2026-07-12T18:15:33","slug":"how-to-calculate-square-footage-of-a-staircase","status":"publish","type":"post","link":"https:\/\/squarefootcalc.com\/blog\/how-to-calculate-square-footage-of-a-staircase\/","title":{"rendered":"How to Calculate Square Footage of a Staircase (Carpet &amp; Floor Footprint)"},"content":{"rendered":"\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&#038;family=Source+Serif+4:opsz,wght@8..60,300;8..60,400;8..60,600&#038;display=swap\" rel=\"stylesheet\">\n<style>\n  :root {\n    --ink: #1a1612;\n    --paper: #faf7f2;\n    --cream: #f2ede3;\n    --rust: #b84c2a;\n    --gold: #c9983a;\n    --teal: #2a7c72;\n    --muted: #6b6257;\n    --border: #d9d0c3;\n    --highlight: #fff8e8;\n  }\n\n  * { box-sizing: border-box; margin: 0; padding: 0; }\n\n  .subtitle { font-size: 1.1rem; color: var(--muted); line-height: 1.6; max-width: 640px; font-style: italic; margin-bottom: 8px; }\n  .divider { border: none; border-top: 1px solid var(--border); margin: 48px 0; }\n\n  h2 { font-family: 'Playfair Display', serif; font-size: 1.65rem; font-weight: 700; color: var(--ink); margin: 56px 0 16px; padding-bottom: 8px; border-bottom: 2px solid var(--gold); display: inline-block; }\n  h3 { font-family: 'Playfair Display', serif; font-size: 1.2rem; font-weight: 700; color: var(--ink); margin: 32px 0 12px; }\n\n  p { margin-bottom: 18px; font-size: 1rem; line-height: 1.75; color: var(--ink); }\n  a { color: var(--rust); text-decoration: none; }\n  a:hover { text-decoration: underline; }\n  strong { color: var(--ink); }\n\n  .toc { background: var(--cream); border: 1px solid var(--border); padding: 24px 28px; margin: 36px 0; border-radius: 3px; }\n  .toc-title { font-family: 'Playfair Display', serif; font-size: 0.95rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: var(--muted); margin-bottom: 12px; }\n  .toc ol { padding-left: 20px; font-size: 0.95rem; color: var(--muted); }\n  .toc li { margin-bottom: 5px; }\n  .toc a { color: var(--muted); }\n  .toc a:hover { color: var(--rust); }\n\n  .formula-hero { background: var(--ink); color: white; border-radius: 4px; padding: 32px; margin: 32px 0; text-align: center; }\n  .formula-hero .label { font-family: 'Source Serif 4', serif; font-size: 0.78rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--gold); font-weight: 600; margin-bottom: 14px; }\n  .formula-hero .formula { font-family: 'Playfair Display', serif; font-size: 1.55rem; font-weight: 700; color: white; margin-bottom: 10px; line-height: 1.45; }\n  .formula-hero .note { font-size: 0.9rem; color: rgba(255,255,255,0.6); font-style: italic; }\n\n  .formula-box { background: var(--highlight); border-left: 3px solid var(--gold); padding: 14px 18px; margin: 20px 0; border-radius: 0 3px 3px 0; }\n  .formula-box .formula-label { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.12em; color: var(--muted); font-weight: 600; margin-bottom: 6px; }\n  .formula-box .formula-text { font-family: 'Playfair Display', serif; font-size: 1.05rem; color: var(--ink); line-height: 1.6; }\n\n  .steps { margin: 24px 0; }\n  .step { display: flex; gap: 18px; margin-bottom: 24px; align-items: flex-start; }\n  .step-num { min-width: 40px; height: 40px; background: var(--rust); color: white; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: 'Playfair Display', serif; font-weight: 700; font-size: 1rem; flex-shrink: 0; margin-top: 2px; }\n  .step-content { font-size: 0.98rem; color: var(--muted); line-height: 1.65; }\n  .step-content strong { display: block; color: var(--ink); font-size: 1.02rem; margin-bottom: 4px; }\n\n  .example-box { background: #f8faf9; border: 1px solid #c5d9d5; border-radius: 3px; padding: 14px 18px; font-size: 0.95rem; margin: 14px 0; color: var(--muted); line-height: 1.75; }\n  .example-box .ex-label { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.12em; color: var(--teal); font-weight: 600; margin-bottom: 6px; }\n  .example-box .ex-answer { font-size: 1.15rem; font-weight: 700; color: var(--teal); margin-top: 6px; display: block; }\n\n  \/* SCENARIO CARDS *\/\n  .scenario-card { background: white; border: 1px solid var(--border); border-radius: 4px; padding: 32px; margin: 36px 0; box-shadow: 0 2px 12px rgba(0,0,0,0.04); position: relative; }\n  .scenario-card::before { content: attr(data-label); position: absolute; top: -14px; left: 28px; background: var(--rust); color: white; font-family: 'Playfair Display', serif; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; padding: 3px 12px; border-radius: 2px; }\n  .scenario-card.teal::before { background: var(--teal); }\n  .scenario-card.gold::before { background: var(--gold); }\n  .scenario-card.dark::before { background: #3a3530; }\n  .scenario-card h3 { font-size: 1.25rem; margin-top: 6px; margin-bottom: 6px; }\n  .scenario-meta { font-size: 0.9rem; color: var(--muted); margin-bottom: 20px; font-style: italic; }\n  .scenario-body { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: start; }\n  @media (max-width: 580px) { .scenario-body { grid-template-columns: 1fr; } .scenario-card { padding: 24px; } }\n  .scenario-svg-wrap { display: flex; justify-content: center; align-items: center; background: var(--cream); border-radius: 4px; padding: 16px; min-height: 200px; }\n  .scenario-svg-wrap svg { max-width: 100%; height: auto; display: block; }\n\n  table { width: 100%; border-collapse: collapse; margin: 28px 0; font-size: 0.95rem; }\n  thead tr { background: var(--ink); color: white; }\n  thead th { padding: 12px 16px; text-align: left; font-family: 'Source Serif 4', serif; font-weight: 600; font-size: 0.82rem; letter-spacing: 0.08em; text-transform: uppercase; }\n  tbody tr:nth-child(even) { background: var(--cream); }\n  tbody tr:nth-child(odd) { background: white; }\n  tbody td { padding: 11px 16px; border-bottom: 1px solid var(--border); color: var(--muted); }\n  tbody td:first-child { font-weight: 600; color: var(--ink); }\n\n  .tips-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 24px 0; }\n  @media (max-width: 520px) { .tips-grid { grid-template-columns: 1fr; } }\n  .tip-card { background: white; border: 1px solid var(--border); border-radius: 3px; padding: 18px 20px; }\n  .tip-card .tip-icon { font-size: 1.4rem; margin-bottom: 8px; }\n  .tip-card strong { display: block; color: var(--rust); margin-bottom: 4px; font-size: 0.88rem; letter-spacing: 0.05em; text-transform: uppercase; }\n  .tip-card p { margin: 0; color: var(--muted); line-height: 1.5; font-size: 0.93rem; }\n\n  .callout { background: var(--cream); border: 1px solid var(--border); border-radius: 4px; padding: 24px 28px; margin: 32px 0; }\n  .callout-title { font-family: 'Playfair Display', serif; font-size: 1.05rem; font-weight: 700; color: var(--ink); margin-bottom: 12px; }\n  .callout p { margin-bottom: 0; font-size: 0.97rem; color: var(--muted); line-height: 1.7; }\n\n  .waste-row { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }\n  .waste-pct { min-width: 44px; font-family: 'Playfair Display', serif; font-weight: 700; font-size: 1.1rem; color: var(--rust); }\n  .waste-bar-wrap { flex: 1; height: 8px; background: var(--border); border-radius: 4px; overflow: hidden; }\n  .waste-bar { height: 100%; background: var(--rust); border-radius: 4px; }\n  .waste-label { color: var(--muted); font-size: 0.9rem; }\n\n  .diagram-wrap { margin: 32px 0; background: var(--cream); border: 1px solid var(--border); border-radius: 4px; padding: 20px; overflow-x: auto; }\n  .diagram-wrap svg { display: block; margin: 0 auto; max-width: 100%; }\n\n  .faq { margin: 24px 0; }\n  .faq-item { border-top: 1px solid var(--border); padding: 20px 0; }\n  .faq-q { font-family: 'Playfair Display', serif; font-size: 1.05rem; font-weight: 700; color: var(--ink); margin-bottom: 8px; }\n  .faq-a { color: var(--muted); font-size: 0.97rem; line-height: 1.7; margin: 0; }\n\n  .cta-box { background: var(--ink); color: white; border-radius: 4px; padding: 28px 32px; margin: 48px 0 24px; text-align: center; }\n  .cta-box p { color: rgba(255,255,255,0.75); margin-bottom: 16px; font-size: 0.97rem; }\n  .cta-btn { display: inline-block; background: var(--rust); color: white; font-family: 'Source Serif 4', serif; font-weight: 600; font-size: 0.9rem; letter-spacing: 0.06em; text-transform: uppercase; padding: 12px 28px; border-radius: 2px; text-decoration: none; }\n  .cta-btn:hover { background: #9e3e22; text-decoration: none; }\n<\/style>\n\n<!-- INTRO -->\n<header>\n  <p class=\"subtitle\">Whether you need to carpet a staircase, tile a landing, count stairs for a real estate listing, or figure out what&#8217;s included in your home&#8217;s square footage \u2014 staircase measurements follow a simple logic once you understand what you&#8217;re actually counting.<\/p>\n<\/header>\n\n<div class=\"toc\">\n  <div class=\"toc-title\">In this guide<\/div>\n  <ol>\n    <li><a href=\"#what-counts\">What staircase square footage means<\/a><\/li>\n    <li><a href=\"#footprint\">The floor footprint method<\/a><\/li>\n    <li><a href=\"#carpet\">Calculating stair carpet (surface area)<\/a><\/li>\n    <li><a href=\"#straight\">Straight staircase \u2014 worked example<\/a><\/li>\n    <li><a href=\"#landing\">Staircase with a landing<\/a><\/li>\n    <li><a href=\"#l-shaped\">L-shaped staircase<\/a><\/li>\n    <li><a href=\"#winder\">Winder stairs<\/a><\/li>\n    <li><a href=\"#real-estate\">Staircases in real estate square footage<\/a><\/li>\n    <li><a href=\"#mistakes\">Mistakes to avoid<\/a><\/li>\n    <li><a href=\"#faq\">Frequently asked questions<\/a><\/li>\n  <\/ol>\n<\/div>\n\n<p>Staircases create a specific measurement challenge because they serve two purposes: they occupy floor space on the level below, and they provide walking surface on the treads and risers above. Which one you measure depends entirely on what you need the number for.<\/p>\n\n<p>Once you have your dimensions, use <a href=\"https:\/\/squarefootcalc.com\/\">SquareFootCalc.com<\/a> to calculate each section in seconds.<\/p>\n\n<hr class=\"divider\" id=\"what-counts\">\n\n<h2>What Staircase Square Footage Means<\/h2>\n\n<p>There are two completely different things people mean when they talk about staircase square footage:<\/p>\n\n<div class=\"tips-grid\">\n  <div class=\"tip-card\">\n    <div class=\"tip-icon\">\ud83d\udcd0<\/div>\n    <strong>Floor Footprint<\/strong>\n    <p>The rectangular area of floor the staircase occupies \u2014 measured from below, as if looking down at the stairs from the ceiling. Used for real estate square footage, house total area, and floor tile on the level below.<\/p>\n  <\/div>\n  <div class=\"tip-card\">\n    <div class=\"tip-icon\">\ud83e\ude9c<\/div>\n    <strong>Tread Surface Area<\/strong>\n    <p>The actual walking surface \u2014 the sum of every tread and riser face. Used for carpet, stair runners, stair paint, and any material that covers the stair surfaces themselves.<\/p>\n  <\/div>\n<\/div>\n\n<p>These two numbers are different. A staircase&#8217;s floor footprint might be 40 sq ft while its total tread surface area is 65 sq ft. Know which one you need before you start measuring.<\/p>\n\n<hr class=\"divider\" id=\"footprint\">\n\n<h2>The Floor Footprint Method<\/h2>\n\n<div class=\"formula-hero\">\n  <div class=\"label\">Floor Footprint<\/div>\n  <div class=\"formula\">Width \u00d7 Total Run = Staircase Floor Area<\/div>\n  <div class=\"note\">The &#8220;run&#8221; is the horizontal distance the staircase travels from first step to last \u2014 measured at floor level.<\/div>\n<\/div>\n\n<!-- SVG: Floor footprint diagram \u2014 top-down view -->\n<div class=\"diagram-wrap\" style=\"padding:16px;\">\n  <svg width=\"100%\" viewBox=\"0 0 480 300\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"max-width:480px; display:block; margin:0 auto;\" role=\"img\">\n    <title>Top-down view of a straight staircase showing width and total run measurements<\/title>\n    <defs>\n      <pattern id=\"stair-grid\" width=\"16\" height=\"16\" patternUnits=\"userSpaceOnUse\">\n        <path d=\"M 16 0 L 0 0 0 16\" fill=\"none\" stroke=\"#e0d8cc\" stroke-width=\"0.6\"\/>\n      <\/pattern>\n      <marker id=\"arr-fp\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"6\" markerHeight=\"6\" orient=\"auto\">\n        <path d=\"M1 2L8 5L1 8\" fill=\"none\" stroke=\"#6b6257\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n      <\/marker>\n      <marker id=\"arr-fp-r\" viewBox=\"0 0 10 10\" refX=\"1\" refY=\"5\" markerWidth=\"6\" markerHeight=\"6\" orient=\"auto\">\n        <path d=\"M9 2L2 5L9 8\" fill=\"none\" stroke=\"#6b6257\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n      <\/marker>\n    <\/defs>\n\n    <!-- Label: Top-down view -->\n    <text x=\"240\" y=\"18\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"11\" fill=\"#6b6257\" font-weight=\"600\">Top-down view (floor footprint)<\/text>\n\n    <!-- Staircase footprint rectangle -->\n    <rect x=\"60\" y=\"30\" width=\"120\" height=\"220\" fill=\"url(#stair-grid)\"\/>\n    <rect x=\"60\" y=\"30\" width=\"120\" height=\"220\" fill=\"#f5ede0\" opacity=\"0.7\"\/>\n    <rect x=\"60\" y=\"30\" width=\"120\" height=\"220\" fill=\"none\" stroke=\"#b84c2a\" stroke-width=\"2.5\" rx=\"2\"\/>\n\n    <!-- Individual step lines (top-down tread edges) -->\n    <line x1=\"60\" y1=\"52\"  x2=\"180\" y2=\"52\"  stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n    <line x1=\"60\" y1=\"74\"  x2=\"180\" y2=\"74\"  stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n    <line x1=\"60\" y1=\"96\"  x2=\"180\" y2=\"96\"  stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n    <line x1=\"60\" y1=\"118\" x2=\"180\" y2=\"118\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n    <line x1=\"60\" y1=\"140\" x2=\"180\" y2=\"140\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n    <line x1=\"60\" y1=\"162\" x2=\"180\" y2=\"162\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n    <line x1=\"60\" y1=\"184\" x2=\"180\" y2=\"184\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n    <line x1=\"60\" y1=\"206\" x2=\"180\" y2=\"206\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n    <line x1=\"60\" y1=\"228\" x2=\"180\" y2=\"228\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n\n    <!-- Step numbers -->\n    <text x=\"120\" y=\"44\"  text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 1<\/text>\n    <text x=\"120\" y=\"66\"  text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 2<\/text>\n    <text x=\"120\" y=\"88\"  text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 3<\/text>\n    <text x=\"120\" y=\"110\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 4<\/text>\n    <text x=\"120\" y=\"132\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 5<\/text>\n    <text x=\"120\" y=\"154\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 6<\/text>\n    <text x=\"120\" y=\"176\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 7<\/text>\n    <text x=\"120\" y=\"198\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 8<\/text>\n    <text x=\"120\" y=\"220\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 9<\/text>\n    <text x=\"120\" y=\"242\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Step 10<\/text>\n\n    <!-- Width dimension (top) -->\n    <line x1=\"60\" y1=\"20\" x2=\"180\" y2=\"20\" stroke=\"#6b6257\" stroke-width=\"1.5\" marker-start=\"url(#arr-fp-r)\" marker-end=\"url(#arr-fp)\"\/>\n    <text x=\"120\" y=\"16\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"12\" font-weight=\"700\" fill=\"#b84c2a\">Width \u2014 4 ft<\/text>\n\n    <!-- Total Run dimension (right) -->\n    <line x1=\"192\" y1=\"30\" x2=\"192\" y2=\"250\" stroke=\"#6b6257\" stroke-width=\"1.5\" marker-start=\"url(#arr-fp-r)\" marker-end=\"url(#arr-fp)\"\/>\n    <text x=\"240\" y=\"100\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"12\" font-weight=\"700\" fill=\"#b84c2a\">Total Run<\/text>\n    <text x=\"240\" y=\"118\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"11\" fill=\"#6b6257\">10 steps<\/text>\n    <text x=\"240\" y=\"134\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"11\" fill=\"#6b6257\">\u00d7 10 in each<\/text>\n    <text x=\"240\" y=\"150\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"13\" font-weight=\"700\" fill=\"#b84c2a\">= 100 in (8.3 ft)<\/text>\n\n    <!-- Result box -->\n    <rect x=\"280\" y=\"200\" width=\"180\" height=\"70\" rx=\"4\" fill=\"#1a1612\"\/>\n    <text x=\"370\" y=\"223\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"rgba(255,255,255,0.65)\">4 ft \u00d7 8.3 ft =<\/text>\n    <text x=\"370\" y=\"245\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"18\" font-weight=\"700\" fill=\"#c9983a\">33.2 sq ft<\/text>\n    <text x=\"370\" y=\"262\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"rgba(255,255,255,0.5)\">floor footprint<\/text>\n  <\/svg>\n<\/div>\n\n<div class=\"formula-box\">\n  <div class=\"formula-label\">Key terms<\/div>\n  <div class=\"formula-text\">\n    <strong>Tread<\/strong> \u2014 the horizontal surface you step on<br>\n    <strong>Riser<\/strong> \u2014 the vertical face between treads<br>\n    <strong>Run<\/strong> \u2014 the horizontal depth of one tread (typically 9\u201311 inches)<br>\n    <strong>Total run<\/strong> \u2014 the full horizontal distance from first step to last (number of steps \u00d7 run per step)\n  <\/div>\n<\/div>\n\n<hr class=\"divider\" id=\"carpet\">\n\n<h2>Calculating Stair Carpet (Surface Area)<\/h2>\n\n<p>Carpet covers every tread and every riser \u2014 the actual surfaces you walk on, not the floor footprint below. The formula is different from the footprint method.<\/p>\n\n<div class=\"formula-hero\">\n  <div class=\"label\">Stair Carpet \/ Surface Area<\/div>\n  <div class=\"formula\">Number of Steps \u00d7 Width \u00d7 (Tread Depth + Riser Height) = Surface Area<\/div>\n  <div class=\"note\">Each step contributes one tread and one riser. Add both dimensions and multiply by width and step count.<\/div>\n<\/div>\n\n<!-- SVG: Side profile showing tread and riser -->\n<div class=\"diagram-wrap\" style=\"padding:16px;\">\n  <svg width=\"100%\" viewBox=\"0 0 480 280\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"max-width:480px; display:block; margin:0 auto;\" role=\"img\">\n    <title>Side profile of a staircase showing tread depth, riser height, and how carpet covers both surfaces<\/title>\n    <defs>\n      <marker id=\"arr-side\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto\">\n        <path d=\"M1 2L8 5L1 8\" fill=\"none\" stroke=\"#b84c2a\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n      <\/marker>\n      <marker id=\"arr-side-r\" viewBox=\"0 0 10 10\" refX=\"1\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto\">\n        <path d=\"M9 2L2 5L9 8\" fill=\"none\" stroke=\"#b84c2a\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n      <\/marker>\n      <marker id=\"arr-gold\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto\">\n        <path d=\"M1 2L8 5L1 8\" fill=\"none\" stroke=\"#c9983a\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n      <\/marker>\n      <marker id=\"arr-gold-r\" viewBox=\"0 0 10 10\" refX=\"1\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto\">\n        <path d=\"M9 2L2 5L9 8\" fill=\"none\" stroke=\"#c9983a\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n      <\/marker>\n    <\/defs>\n\n    <!-- Label -->\n    <text x=\"240\" y=\"16\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"11\" fill=\"#6b6257\" font-weight=\"600\">Side profile \u2014 tread and riser dimensions<\/text>\n\n    <!-- Step 1 (bottom) -->\n    <rect x=\"50\"  y=\"200\" width=\"60\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>  <!-- tread -->\n    <rect x=\"50\"  y=\"184\" width=\"10\" height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>  <!-- riser -->\n    <!-- Step 2 -->\n    <rect x=\"60\"  y=\"184\" width=\"60\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <rect x=\"60\"  y=\"168\" width=\"10\" height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <!-- Step 3 -->\n    <rect x=\"70\"  y=\"168\" width=\"60\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <rect x=\"70\"  y=\"152\" width=\"10\" height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <!-- Step 4 -->\n    <rect x=\"80\"  y=\"152\" width=\"60\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <rect x=\"80\"  y=\"136\" width=\"10\" height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <!-- Step 5 -->\n    <rect x=\"90\"  y=\"136\" width=\"60\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <rect x=\"90\"  y=\"120\" width=\"10\" height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <!-- Step 6 -->\n    <rect x=\"100\" y=\"120\" width=\"60\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <rect x=\"100\" y=\"104\" width=\"10\" height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <!-- Step 7 -->\n    <rect x=\"110\" y=\"104\" width=\"60\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <rect x=\"110\" y=\"88\"  width=\"10\" height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <!-- Step 8 (top) -->\n    <rect x=\"120\" y=\"88\"  width=\"60\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n    <rect x=\"120\" y=\"72\"  width=\"10\" height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n\n    <!-- Floor line -->\n    <line x1=\"30\" y1=\"216\" x2=\"200\" y2=\"216\" stroke=\"#d9d0c3\" stroke-width=\"1.5\"\/>\n\n    <!-- Tread label + dimension -->\n    <line x1=\"50\" y1=\"225\" x2=\"110\" y2=\"225\" stroke=\"#b84c2a\" stroke-width=\"1.5\" marker-start=\"url(#arr-side-r)\" marker-end=\"url(#arr-side)\"\/>\n    <text x=\"80\" y=\"238\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" font-weight=\"600\" fill=\"#b84c2a\">Tread: 10 in<\/text>\n\n    <!-- Riser label + dimension -->\n    <line x1=\"38\" y1=\"200\" x2=\"38\" y2=\"216\" stroke=\"#c9983a\" stroke-width=\"1.5\" marker-start=\"url(#arr-gold-r)\" marker-end=\"url(#arr-gold)\"\/>\n    <text x=\"20\" y=\"210\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" font-weight=\"600\" fill=\"#8a6820\" transform=\"rotate(-90,20,210)\">Riser: 7.5 in<\/text>\n\n    <!-- Carpet line overlay (showing carpet covering tread+riser) -->\n    <path d=\"M50,200 L110,200 L110,184 L120,184 L120,168 L130,168 L130,152 L140,152 L140,136 L150,136 L150,120 L160,120 L160,104 L170,104 L170,88 L180,88\"\n          fill=\"none\" stroke=\"#2a7c72\" stroke-width=\"3\" stroke-dasharray=\"6,3\" opacity=\"0.8\"\/>\n    <text x=\"320\" y=\"100\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#2a7c72\" font-weight=\"600\">Carpet path<\/text>\n    <text x=\"320\" y=\"115\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#2a7c72\">(tread + riser<\/text>\n    <text x=\"320\" y=\"130\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#2a7c72\">per step)<\/text>\n\n    <!-- Labels: tread fill and riser fill -->\n    <text x=\"85\" y=\"210\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#b84c2a\">Tread (horizontal)<\/text>\n    <text x=\"56\" y=\"178\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#8a6820\" transform=\"rotate(-90,56,178)\">Riser<\/text>\n\n    <!-- Formula reminder box -->\n    <rect x=\"260\" y=\"155\" width=\"200\" height=\"90\" rx=\"4\" fill=\"#1a1612\"\/>\n    <text x=\"360\" y=\"178\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"rgba(255,255,255,0.65)\">Per step carpet width:<\/text>\n    <text x=\"360\" y=\"197\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"12\" font-weight=\"700\" fill=\"#c9983a\">Tread + Riser = 17.5 in<\/text>\n    <text x=\"360\" y=\"215\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"rgba(255,255,255,0.65)\">\u00d7 stair width \u00d7 step count<\/text>\n    <text x=\"360\" y=\"233\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"11\" font-weight=\"700\" fill=\"#c9983a\">= total carpet area<\/text>\n  <\/svg>\n<\/div>\n\n<hr class=\"divider\" id=\"straight\">\n\n<!-- STRAIGHT STAIRCASE -->\n<div class=\"scenario-card\" data-label=\"Staircase Type 01\">\n  <h3>Straight Staircase<\/h3>\n  <div class=\"scenario-meta\">The most common type \u2014 runs in a single direction from bottom to top with no turns or landings<\/div>\n  <div class=\"scenario-body\">\n    <div class=\"scenario-svg-wrap\">\n      <svg viewBox=\"0 0 240 260\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"240\" height=\"260\">\n        <defs>\n          <marker id=\"arr-str\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto\">\n            <path d=\"M1 2L8 5L1 8\" fill=\"none\" stroke=\"#6b6257\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n          <\/marker>\n          <marker id=\"arr-str-r\" viewBox=\"0 0 10 10\" refX=\"1\" refY=\"5\" markerWidth=\"6\" markerHeight=\"6\" orient=\"auto\">\n            <path d=\"M9 2L2 5L9 8\" fill=\"none\" stroke=\"#6b6257\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n          <\/marker>\n        <\/defs>\n\n        <!-- 10 steps, side view, each step 20px wide (run) \u00d7 16px tall (rise) -->\n        <!-- Steps go left-to-right and upward -->\n        <rect x=\"30\"  y=\"200\" width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"30\"  y=\"184\" width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"36\"  y=\"184\" width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"36\"  y=\"168\" width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"42\"  y=\"168\" width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"42\"  y=\"152\" width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"48\"  y=\"152\" width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"48\"  y=\"136\" width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"54\"  y=\"136\" width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"54\"  y=\"120\" width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"60\"  y=\"120\" width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"60\"  y=\"104\" width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"66\"  y=\"104\" width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"66\"  y=\"88\"  width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"72\"  y=\"88\"  width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"72\"  y=\"72\"  width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"78\"  y=\"72\"  width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"78\"  y=\"56\"  width=\"6\"  height=\"16\" fill=\"#e8d8c0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n        <rect x=\"84\"  y=\"56\"  width=\"20\" height=\"16\" fill=\"#f5ede0\" stroke=\"#b84c2a\" stroke-width=\"1.5\"\/>\n\n        <!-- Floor line -->\n        <line x1=\"20\" y1=\"216\" x2=\"210\" y2=\"216\" stroke=\"#d9d0c3\" stroke-width=\"1.5\"\/>\n\n        <!-- Width arrow (front face of step 1) -->\n        <line x1=\"30\" y1=\"230\" x2=\"50\" y2=\"230\" stroke=\"#6b6257\" stroke-width=\"1.5\" marker-start=\"url(#arr-str-r)\" marker-end=\"url(#arr-str)\"\/>\n        <text x=\"40\" y=\"244\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">Run 10 in<\/text>\n\n        <!-- Total run arrow -->\n        <line x1=\"30\" y1=\"252\" x2=\"104\" y2=\"252\" stroke=\"#b84c2a\" stroke-width=\"1.5\" marker-start=\"url(#arr-str-r)\" marker-end=\"url(#arr-str)\"\/>\n        <text x=\"67\" y=\"265\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#b84c2a\">Total run \u2014 10 steps \u00d7 10 in = 100 in<\/text>\n\n        <!-- Stair width label (depth into page) -->\n        <text x=\"170\" y=\"160\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#2a7c72\" font-weight=\"600\">Width<\/text>\n        <text x=\"170\" y=\"173\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#2a7c72\">= 4 ft<\/text>\n        <text x=\"170\" y=\"186\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">(into page)<\/text>\n\n        <!-- Step count label -->\n        <text x=\"135\" y=\"80\" font-family=\"'Playfair Display', serif\" font-size=\"11\" font-weight=\"700\" fill=\"#b84c2a\">10 steps<\/text>\n        <text x=\"135\" y=\"96\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">tread: 10 in<\/text>\n        <text x=\"135\" y=\"110\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">riser: 7.5 in<\/text>\n      <\/svg>\n    <\/div>\n    <div>\n      <div class=\"formula-box\">\n        <div class=\"formula-label\">Floor footprint<\/div>\n        <div class=\"formula-text\">Width \u00d7 (Steps \u00d7 Tread depth) = floor sq ft<\/div>\n      <\/div>\n      <div class=\"example-box\">\n        <div class=\"ex-label\">Floor footprint \u2014 10 steps, 10 in tread, 4 ft wide<\/div>\n        Total run: 10 \u00d7 10 in = 100 in = 8.33 ft<br>\n        Footprint: 4 \u00d7 8.33 = <span class=\"ex-answer\">33.3 sq ft<\/span>\n      <\/div>\n      <div class=\"formula-box\" style=\"border-left-color:var(--teal);\">\n        <div class=\"formula-label\">Carpet \/ surface area<\/div>\n        <div class=\"formula-text\">Steps \u00d7 Width \u00d7 (Tread + Riser) = carpet sq ft<\/div>\n      <\/div>\n      <div class=\"example-box\">\n        <div class=\"ex-label\">Carpet \u2014 10 steps, 4 ft wide, 10 in tread + 7.5 in riser<\/div>\n        Per step: 10 + 7.5 = 17.5 in = 1.46 ft<br>\n        Total: 10 \u00d7 4 \u00d7 1.46 = <span class=\"ex-answer\">58.3 sq ft of carpet<\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<hr class=\"divider\" id=\"landing\">\n\n<!-- STAIRCASE WITH LANDING -->\n<div class=\"scenario-card teal\" data-label=\"Staircase Type 02\">\n  <h3>Staircase with a Landing<\/h3>\n  <div class=\"scenario-meta\">A flat platform mid-flight \u2014 adds its own floor area that must be measured and carpeted separately<\/div>\n  <div class=\"scenario-body\">\n    <div class=\"scenario-svg-wrap\">\n      <svg viewBox=\"0 0 240 280\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"240\" height=\"280\">\n        <!-- Lower flight: 5 steps -->\n        <rect x=\"20\"  y=\"210\" width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"20\"  y=\"196\" width=\"5\"  height=\"14\" fill=\"#e8d8c0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"25\"  y=\"196\" width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"25\"  y=\"182\" width=\"5\"  height=\"14\" fill=\"#e8d8c0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"30\"  y=\"182\" width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"30\"  y=\"168\" width=\"5\"  height=\"14\" fill=\"#e8d8c0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"35\"  y=\"168\" width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"35\"  y=\"154\" width=\"5\"  height=\"14\" fill=\"#e8d8c0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"40\"  y=\"154\" width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n\n        <!-- LANDING (flat rectangle) -->\n        <rect x=\"40\" y=\"120\" width=\"70\" height=\"34\" fill=\"#e8f2f0\" stroke=\"#2a7c72\" stroke-width=\"2\"\/>\n        <text x=\"75\" y=\"140\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"11\" font-weight=\"700\" fill=\"#2a7c72\">Landing<\/text>\n        <text x=\"75\" y=\"152\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#6b6257\">4 \u00d7 4 ft<\/text>\n\n        <!-- Upper flight: 5 steps -->\n        <rect x=\"110\" y=\"120\" width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"110\" y=\"106\" width=\"5\"  height=\"14\" fill=\"#e8d8c0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"115\" y=\"106\" width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"115\" y=\"92\"  width=\"5\"  height=\"14\" fill=\"#e8d8c0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"120\" y=\"92\"  width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"120\" y=\"78\"  width=\"5\"  height=\"14\" fill=\"#e8d8c0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"125\" y=\"78\"  width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"125\" y=\"64\"  width=\"5\"  height=\"14\" fill=\"#e8d8c0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n        <rect x=\"130\" y=\"64\"  width=\"18\" height=\"14\" fill=\"#f5ede0\" stroke=\"#2a7c72\" stroke-width=\"1.5\"\/>\n\n        <!-- Floor line -->\n        <line x1=\"10\" y1=\"224\" x2=\"210\" y2=\"224\" stroke=\"#d9d0c3\" stroke-width=\"1.5\"\/>\n\n        <!-- Labels -->\n        <text x=\"32\" y=\"240\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#2a7c72\">Lower<\/text>\n        <text x=\"32\" y=\"252\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#2a7c72\">5 steps<\/text>\n        <text x=\"128\" y=\"240\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#2a7c72\">Upper<\/text>\n        <text x=\"128\" y=\"252\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#2a7c72\">5 steps<\/text>\n\n        <!-- Total label -->\n        <text x=\"120\" y=\"272\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"10\" font-weight=\"700\" fill=\"#1a1612\">Steps + Landing = total<\/text>\n      <\/svg>\n    <\/div>\n    <div>\n      <p style=\"font-size:0.95rem; color:var(--muted); margin-bottom:14px;\">A landing is a flat platform between two flights of stairs. Measure it as a separate rectangle (length \u00d7 width) and add it to the stair calculations.<\/p>\n      <div class=\"formula-box\" style=\"border-left-color:var(--teal);\">\n        <div class=\"formula-label\">Floor footprint with landing<\/div>\n        <div class=\"formula-text\">Lower flight footprint + Landing area + Upper flight footprint<\/div>\n      <\/div>\n      <div class=\"example-box\">\n        <div class=\"ex-label\">Example \u2014 5 + 5 steps, 4 ft wide, 4\u00d74 ft landing<\/div>\n        Lower flight: 4 \u00d7 (5 \u00d7 10 in \u00f7 12) = 4 \u00d7 4.17 = 16.7 sq ft<br>\n        Landing: 4 \u00d7 4 = 16 sq ft<br>\n        Upper flight: 4 \u00d7 4.17 = 16.7 sq ft<br>\n        Total footprint: <span class=\"ex-answer\">49.4 sq ft<\/span>\n      <\/div>\n      <div class=\"formula-box\" style=\"border-left-color:var(--teal); margin-top:14px;\">\n        <div class=\"formula-label\">Carpet with landing<\/div>\n        <div class=\"formula-text\">Both flights&#8217; carpet + landing perimeter wrap (or flat area)<\/div>\n      <\/div>\n      <div class=\"example-box\">\n        <div class=\"ex-label\">Carpet \u2014 same staircase<\/div>\n        Both flights: 10 \u00d7 4 \u00d7 (10+7.5) in \u00f7 12 = 58.3 sq ft<br>\n        Landing flat: 4 \u00d7 4 = 16 sq ft<br>\n        Total carpet: <span class=\"ex-answer\">74.3 sq ft<\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<hr class=\"divider\" id=\"l-shaped\">\n\n<!-- L-SHAPED STAIRCASE -->\n<div class=\"scenario-card gold\" data-label=\"Staircase Type 03\">\n  <h3>L-Shaped Staircase<\/h3>\n  <div class=\"scenario-meta\">Changes direction by 90\u00b0 \u2014 has a corner landing or winder turns at the bend<\/div>\n  <div class=\"scenario-body\">\n    <div class=\"scenario-svg-wrap\">\n      <svg viewBox=\"0 0 240 260\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"240\" height=\"260\">\n        <!-- Lower flight going right (5 steps, top-down view) -->\n        <rect x=\"20\" y=\"160\" width=\"48\" height=\"40\" fill=\"#fff8e8\" stroke=\"#c9983a\" stroke-width=\"2\" rx=\"2\"\/>\n        <!-- Step lines in lower flight -->\n        <line x1=\"32\" y1=\"160\" x2=\"32\" y2=\"200\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n        <line x1=\"44\" y1=\"160\" x2=\"44\" y2=\"200\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n        <line x1=\"56\" y1=\"160\" x2=\"56\" y2=\"200\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n        <text x=\"44\" y=\"184\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#8a6820\">5 steps \u2192<\/text>\n\n        <!-- Corner landing (square) -->\n        <rect x=\"68\" y=\"160\" width=\"40\" height=\"40\" fill=\"#f5ede0\" stroke=\"#c9983a\" stroke-width=\"2\" rx=\"2\"\/>\n        <text x=\"88\" y=\"183\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"9\" font-weight=\"700\" fill=\"#8a6820\">Corner<\/text>\n        <text x=\"88\" y=\"195\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#6b6257\">landing<\/text>\n\n        <!-- Upper flight going up (5 steps, top-down view) -->\n        <rect x=\"68\" y=\"80\" width=\"40\" height=\"80\" fill=\"#fff8e8\" stroke=\"#c9983a\" stroke-width=\"2\" rx=\"2\"\/>\n        <!-- Step lines in upper flight -->\n        <line x1=\"68\" y1=\"96\"  x2=\"108\" y2=\"96\"  stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n        <line x1=\"68\" y1=\"112\" x2=\"108\" y2=\"112\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n        <line x1=\"68\" y1=\"128\" x2=\"108\" y2=\"128\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n        <line x1=\"68\" y1=\"144\" x2=\"108\" y2=\"144\" stroke=\"#d9d0c3\" stroke-width=\"1\"\/>\n        <text x=\"88\" y=\"124\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"9\" fill=\"#8a6820\">5 steps \u2191<\/text>\n\n        <!-- Dimension annotations -->\n        <!-- Lower flight width -->\n        <text x=\"44\" y=\"215\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#8a6820\">Lower flight<\/text>\n        <text x=\"44\" y=\"226\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#6b6257\">48\u00d740 px<\/text>\n\n        <!-- Section labels -->\n        <text x=\"160\" y=\"130\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#6b6257\" font-weight=\"600\">Section A:<\/text>\n        <text x=\"160\" y=\"144\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#8a6820\">Lower flight<\/text>\n        <text x=\"160\" y=\"160\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#6b6257\">+ Corner<\/text>\n        <text x=\"160\" y=\"176\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#6b6257\">+ Upper flight<\/text>\n        <text x=\"160\" y=\"200\" font-family=\"'Playfair Display', serif\" font-size=\"10\" font-weight=\"700\" fill=\"#8a6820\">= total footprint<\/text>\n\n        <!-- Arrow showing direction -->\n        <text x=\"25\" y=\"155\" font-family=\"'Source Serif 4', serif\" font-size=\"16\" fill=\"#c9983a\">\u2192<\/text>\n        <text x=\"60\" y=\"150\" font-family=\"'Source Serif 4', serif\" font-size=\"16\" fill=\"#c9983a\">\u2191<\/text>\n\n        <!-- Total label -->\n        <text x=\"120\" y=\"248\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"11\" font-weight=\"700\" fill=\"#1a1612\">Measure each section separately<\/text>\n      <\/svg>\n    <\/div>\n    <div>\n      <p style=\"font-size:0.95rem; color:var(--muted); margin-bottom:14px;\">An L-shaped staircase changes direction at a corner landing. Measure the floor footprint in two sections \u2014 the lower flight and the upper flight \u2014 plus the corner landing as its own rectangle. Add all three.<\/p>\n      <div class=\"formula-box\" style=\"border-left-color:var(--gold);\">\n        <div class=\"formula-label\">Method<\/div>\n        <div class=\"formula-text\">Lower flight footprint + Corner landing + Upper flight footprint<\/div>\n      <\/div>\n      <div class=\"example-box\">\n        <div class=\"ex-label\">Example \u2014 5 steps each flight, 3.5 ft wide, 3.5\u00d73.5 ft landing<\/div>\n        Lower flight: 3.5 \u00d7 (5 \u00d7 10 in \u00f7 12) = 3.5 \u00d7 4.17 = 14.6 sq ft<br>\n        Corner landing: 3.5 \u00d7 3.5 = 12.25 sq ft<br>\n        Upper flight: 3.5 \u00d7 4.17 = 14.6 sq ft<br>\n        Total footprint: <span class=\"ex-answer\">41.4 sq ft<\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<hr class=\"divider\" id=\"winder\">\n\n<!-- WINDER STAIRS -->\n<div class=\"scenario-card dark\" data-label=\"Staircase Type 04\">\n  <h3>Winder Stairs<\/h3>\n  <div class=\"scenario-meta\">Triangular steps at the turn \u2014 no landing, the stair itself pivots around a corner<\/div>\n  <div class=\"scenario-body\">\n    <div class=\"scenario-svg-wrap\">\n      <svg viewBox=\"0 0 240 240\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"240\" height=\"240\">\n        <defs>\n          <pattern id=\"wind-pat\" width=\"10\" height=\"10\" patternUnits=\"userSpaceOnUse\">\n            <path d=\"M 10 0 L 0 0 0 10\" fill=\"none\" stroke=\"#e8d8cc\" stroke-width=\"0.5\"\/>\n          <\/pattern>\n        <\/defs>\n        <!-- Standard steps below winder -->\n        <rect x=\"20\" y=\"170\" width=\"16\" height=\"50\" fill=\"#f5ede0\" stroke=\"#3a3530\" stroke-width=\"1.5\"\/>\n        <rect x=\"36\" y=\"170\" width=\"16\" height=\"50\" fill=\"#f5ede0\" stroke=\"#3a3530\" stroke-width=\"1.5\"\/>\n        <rect x=\"52\" y=\"170\" width=\"16\" height=\"50\" fill=\"#f5ede0\" stroke=\"#3a3530\" stroke-width=\"1.5\"\/>\n        <text x=\"52\" y=\"196\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#6b6257\">3 regular<\/text>\n        <text x=\"52\" y=\"208\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#6b6257\">steps<\/text>\n\n        <!-- Winder steps (triangular\/trapezoidal at the bend) -->\n        <!-- Winder 1 -->\n        <polygon points=\"68,170 68,220 120,220\" fill=\"url(#wind-pat)\"\/>\n        <polygon points=\"68,170 68,220 120,220\" fill=\"#fff8e8\" opacity=\"0.8\"\/>\n        <polygon points=\"68,170 68,220 120,220\" fill=\"none\" stroke=\"#3a3530\" stroke-width=\"2\"\/>\n        <text x=\"82\" y=\"210\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#3a3530\">W1<\/text>\n\n        <!-- Winder 2 -->\n        <polygon points=\"68,120 68,170 120,220\" fill=\"url(#wind-pat)\"\/>\n        <polygon points=\"68,120 68,170 120,220\" fill=\"#fff8e8\" opacity=\"0.8\"\/>\n        <polygon points=\"68,120 68,170 120,220\" fill=\"none\" stroke=\"#3a3530\" stroke-width=\"2\"\/>\n        <text x=\"85\" y=\"178\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#3a3530\">W2<\/text>\n\n        <!-- Winder 3 -->\n        <polygon points=\"68,70 68,120 120,220\" fill=\"url(#wind-pat)\"\/>\n        <polygon points=\"68,70 68,120 120,220\" fill=\"#fff8e8\" opacity=\"0.8\"\/>\n        <polygon points=\"68,70 68,120 120,220\" fill=\"none\" stroke=\"#3a3530\" stroke-width=\"2\"\/>\n        <text x=\"88\" y=\"145\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#3a3530\">W3<\/text>\n\n        <!-- Standard steps above winder -->\n        <rect x=\"120\" y=\"170\" width=\"50\" height=\"16\" fill=\"#f5ede0\" stroke=\"#3a3530\" stroke-width=\"1.5\"\/>\n        <rect x=\"120\" y=\"154\" width=\"50\" height=\"16\" fill=\"#f5ede0\" stroke=\"#3a3530\" stroke-width=\"1.5\"\/>\n        <rect x=\"120\" y=\"138\" width=\"50\" height=\"16\" fill=\"#f5ede0\" stroke=\"#3a3530\" stroke-width=\"1.5\"\/>\n        <text x=\"145\" y=\"162\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#6b6257\">3 regular<\/text>\n        <text x=\"145\" y=\"175\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"8\" fill=\"#6b6257\">steps<\/text>\n\n        <!-- Labels -->\n        <text x=\"120\" y=\"40\" text-anchor=\"middle\" font-family=\"'Playfair Display', serif\" font-size=\"12\" font-weight=\"700\" fill=\"#3a3530\">Winder Steps<\/text>\n        <text x=\"120\" y=\"58\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#6b6257\">Each winder = triangle<\/text>\n        <text x=\"120\" y=\"73\" text-anchor=\"middle\" font-family=\"'Source Serif 4', serif\" font-size=\"10\" fill=\"#6b6257\">Area = \u00bd \u00d7 b \u00d7 h<\/text>\n\n        <!-- Floor line -->\n        <line x1=\"10\" y1=\"222\" x2=\"230\" y2=\"222\" stroke=\"#d9d0c3\" stroke-width=\"1.5\"\/>\n      <\/svg>\n    <\/div>\n    <div>\n      <p style=\"font-size:0.95rem; color:var(--muted); margin-bottom:14px;\">Winder stairs have triangular or trapezoidal steps at the turn \u2014 no separate landing. Each winder step must be calculated individually using the triangle or trapezoid formula, then added to the rectangular steps.<\/p>\n      <div class=\"formula-box\" style=\"border-left-color:#3a3530;\">\n        <div class=\"formula-label\">Winder step area<\/div>\n        <div class=\"formula-text\">Each triangular winder: \u00bd \u00d7 base \u00d7 height<br>Each trapezoidal winder: \u00bd \u00d7 (a + b) \u00d7 height<br>Sum all winders + add rectangular steps<\/div>\n      <\/div>\n      <div class=\"example-box\">\n        <div class=\"ex-label\">Example \u2014 3 rectangular steps each side + 3 winder steps<\/div>\n        Regular steps (6 total): 6 \u00d7 3.5 \u00d7 (10\u00f712) = 17.5 sq ft<br>\n        Each winder triangle: \u00bd \u00d7 3.5 \u00d7 3.5 = 6.1 sq ft<br>\n        3 winders: 3 \u00d7 6.1 = 18.4 sq ft<br>\n        Total footprint: <span class=\"ex-answer\">35.9 sq ft<\/span>\n      <\/div>\n      <p style=\"font-size:0.88rem; color:var(--muted); margin-top:10px; margin-bottom:0;\">For carpet, winder steps are measured along the centre line of the stair width. Most carpet fitters measure winders individually on site \u2014 for a budgetary estimate, add 20\u201325% extra over the simple rectangular calculation.<\/p>\n    <\/div>\n  <\/div>\n<\/div>\n\n<hr class=\"divider\" id=\"real-estate\">\n\n<h2>Staircases in Real Estate Square Footage<\/h2>\n\n<p>A staircase&#8217;s floor footprint counts toward your home&#8217;s square footage \u2014 but only once, on the floor where it begins. Here&#8217;s the convention:<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>Floor<\/th>\n      <th>Counted?<\/th>\n      <th>How<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr><td>Ground floor (where stairs begin)<\/td><td>Yes<\/td><td>Include the full footprint in ground floor total<\/td><\/tr>\n    <tr><td>Upper floor (where stairs end)<\/td><td>No<\/td><td>Do not count the stairwell opening again \u2014 it&#8217;s open air<\/td><\/tr>\n    <tr><td>Stairwell void (open to below)<\/td><td>No<\/td><td>The open space above the stairs on upper floor is excluded<\/td><\/tr>\n    <tr><td>Landing (mid-flight platform)<\/td><td>Yes<\/td><td>Count as part of the floor it sits on<\/td><\/tr>\n    <tr><td>Basement stairs<\/td><td>Depends<\/td><td>Count if basement is finished; exclude if unfinished<\/td><\/tr>\n  <\/tbody>\n<\/table>\n\n<div class=\"callout\">\n  <div class=\"callout-title\">The simple rule<\/div>\n  <p>Count the staircase footprint once \u2014 on the floor where the first step begins. On every other floor, the stairwell opening is simply a hole in the floor, not a countable area. If a staircase runs from ground to first floor, the ground floor total includes the stair footprint; the first floor total has a corresponding &#8220;missing&#8221; section where the opening is.<\/p>\n<\/div>\n\n<hr class=\"divider\" id=\"mistakes\">\n\n<h2>Mistakes to Avoid<\/h2>\n\n<div class=\"tips-grid\">\n  <div class=\"tip-card\">\n    <div class=\"tip-icon\">\ud83d\udd01<\/div>\n    <strong>Counting stairs on both floors<\/strong>\n    <p>The staircase footprint is counted once only \u2014 on the floor where it starts. Never add the same stair footprint to both the ground and upper floor totals. That&#8217;s double-counting.<\/p>\n  <\/div>\n  <div class=\"tip-card\">\n    <div class=\"tip-icon\">\ud83d\udcd0<\/div>\n    <strong>Using footprint area for carpet<\/strong>\n    <p>Floor footprint and carpet surface area are different numbers. A staircase that is 33 sq ft in footprint might need 58 sq ft of carpet. Always calculate carpet using tread + riser depths per step.<\/p>\n  <\/div>\n  <div class=\"tip-card\">\n    <div class=\"tip-icon\">\ud83d\udce6<\/div>\n    <strong>Not adding a waste buffer for stair carpet<\/strong>\n    <p>Stair carpet is notoriously wasteful \u2014 each tread must be cut and wrapped. Add 15% to your surface area calculation before buying. Stairs with pattern carpets need 20% or more to match repeats at each step.<\/p>\n  <\/div>\n  <div class=\"tip-card\">\n    <div class=\"tip-icon\">\ud83d\udccf<\/div>\n    <strong>Forgetting the nosing overhang<\/strong>\n    <p>Most treads have a nosing \u2014 an overhang of 0.75\u20131.25 inches beyond the riser face. Carpet wraps over the nosing, so add the nosing depth to the tread measurement when calculating carpet surface area.<\/p>\n  <\/div>\n  <div class=\"tip-card\">\n    <div class=\"tip-icon\">\ud83e\ude9c<\/div>\n    <strong>Measuring the landing as part of a flight<\/strong>\n    <p>A landing is not a step. Measure it as a separate flat rectangle \u2014 length \u00d7 width \u2014 and add it to the stair totals. Including landing area in the step count inflates the numbers.<\/p>\n  <\/div>\n  <div class=\"tip-card\">\n    <div class=\"tip-icon\">\ud83d\udd22<\/div>\n    <strong>Counting risers instead of treads<\/strong>\n    <p>A staircase with 10 treads has 11 risers (one at the very bottom before the first tread). For carpet, count 10 treads and 10 risers \u2014 the bottom riser is typically not carpeted. Confirm before ordering.<\/p>\n  <\/div>\n<\/div>\n\n<hr class=\"divider\" id=\"faq\">\n\n<h2>Frequently Asked Questions<\/h2>\n\n<div class=\"faq\">\n  <div class=\"faq-item\">\n    <div class=\"faq-q\">How do I calculate the square footage of a staircase for carpet?<\/div>\n    <p class=\"faq-a\">Multiply the number of steps by the stair width, then by the combined tread and riser depth. For example: 12 steps \u00d7 3.5 ft wide \u00d7 (10 in tread + 7.5 in riser) \u00f7 12 = 12 \u00d7 3.5 \u00d7 1.458 = 61.2 sq ft. Add 15% for waste before ordering.<\/p>\n  <\/div>\n  <div class=\"faq-item\">\n    <div class=\"faq-q\">Does a staircase count toward house square footage?<\/div>\n    <p class=\"faq-a\">Yes \u2014 the floor footprint of the staircase counts toward the square footage of the floor where it starts. It is not counted again on the upper floor. A staircase starting on the ground floor is included in the ground floor total only.<\/p>\n  <\/div>\n  <div class=\"faq-item\">\n    <div class=\"faq-q\">What is the typical square footage of a standard staircase?<\/div>\n    <p class=\"faq-a\">A standard residential staircase with 13 steps (typical floor-to-floor height), 10-inch treads, and a 3.5 ft width has a floor footprint of roughly 38\u201342 sq ft. The carpet surface area for the same staircase is typically 55\u201365 sq ft.<\/p>\n  <\/div>\n  <div class=\"faq-item\">\n    <div class=\"faq-q\">What is a tread and what is a riser?<\/div>\n    <p class=\"faq-a\">The tread is the horizontal surface you step on \u2014 typically 9\u201311 inches deep. The riser is the vertical face between treads \u2014 typically 7\u20138 inches tall. Carpet covers both surfaces, so both dimensions must be included in a carpet calculation.<\/p>\n  <\/div>\n  <div class=\"faq-item\">\n    <div class=\"faq-q\">How do I measure a curved or spiral staircase?<\/div>\n    <p class=\"faq-a\">For a spiral staircase, the floor footprint is typically circular \u2014 calculate it as \u03c0 \u00d7 r\u00b2, where r is the radius from the centre pole to the outer edge of the steps. For carpet, measure each individual step at its midpoint width (halfway between the narrow inner edge and the wider outer edge) and use that as the effective tread width for each step.<\/p>\n  <\/div>\n  <div class=\"faq-item\">\n    <div class=\"faq-q\">How much extra carpet should I buy for stairs?<\/div>\n    <p class=\"faq-a\">Add at least 15% to your stair carpet calculation for waste from cuts. If using patterned carpet, add 20\u201325% to account for pattern matching at each tread. Stair installations waste significantly more material than flat floor installations because each step requires individual cutting and wrapping.<\/p>\n  <\/div>\n<\/div>\n\n<div class=\"cta-box\">\n  <p>Have your stair dimensions? Calculate tread surface area or floor footprint instantly.<\/p>\n  <a href=\"https:\/\/squarefootcalc.com\/\" class=\"cta-btn\">Calculate Square Footage Free \u2192<\/a>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Whether you need to carpet a staircase, tile a landing, count stairs for a real estate listing, or figure out what&#8217;s included in your home&#8217;s square footage \u2014 staircase measurements follow a simple logic once you understand what you&#8217;re actually counting. In this guide What staircase square footage means The floor footprint method Calculating stair&#8230;<\/p>\n","protected":false},"author":1,"featured_media":187,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-186","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"taxonomy_info":{"category":[{"value":1,"label":"Blog"}]},"featured_image_src_large":["https:\/\/squarefootcalc.com\/blog\/wp-content\/uploads\/2026\/07\/How-to-Calculate-Square-Footage-of-a-Staircase-1024x683.webp",1024,683,true],"author_info":{"display_name":"Luke","author_link":"https:\/\/squarefootcalc.com\/blog\/author\/aziz315\/"},"comment_info":0,"category_info":[{"term_id":1,"name":"Blog","slug":"blog","term_group":0,"term_taxonomy_id":1,"taxonomy":"category","description":"","parent":0,"count":30,"filter":"raw","cat_ID":1,"category_count":30,"category_description":"","cat_name":"Blog","category_nicename":"blog","category_parent":0}],"tag_info":false,"_links":{"self":[{"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/posts\/186","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/comments?post=186"}],"version-history":[{"count":2,"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/posts\/186\/revisions"}],"predecessor-version":[{"id":189,"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/posts\/186\/revisions\/189"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/media\/187"}],"wp:attachment":[{"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/media?parent=186"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/categories?post=186"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/squarefootcalc.com\/blog\/wp-json\/wp\/v2\/tags?post=186"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}