● Blog · Real test

Can ChatGPT do a drywall takeoff? We tested it on a real plan sheet

By · · 7 min read

Short answer: not yet, and not in the way that matters most. On October 9, 2026 we gave free ChatGPT (signed out, the version most people try first) a real first-floor plan from an apartment renovation and asked for a framing and drywall takeoff. It first declined to give a number, then, when pushed, estimated 220 LF of new walls, 195 studs and 91 sheets. The sheet draws no new walls at all: every wall on it is marked "existing to remain."

We also ran our own tool on the same sheet. It got the same thing wrong, in a different way. Both results are below, along with what we changed.

The test

The plan set is the same 21-page apartment renovation we used in our first public test. We used sheet A201 (first floor plan, 1/8" = 1'-0") and the wall-types table from sheet A901. We asked the question the way a sub would:

I'm a drywall and framing subcontractor bidding this job. Do a takeoff for this floor: linear feet of NEW walls, number of studs, and number of 4x12 sheets of 5/8" drywall. Assume 9 ft wall height. Show your numbers.

We gave it every advantage we could: the scale, the building length (about 138 ft) and the default wall type from the legend (A4: 2x4 studs at 16" o.c., 5/8" gypsum both sides).

What happened, step by step

220 LF
New walls, per ChatGPT (after being told how the legend works)
0 LF
New-wall linework actually drawn on sheet A201

How we know it's zero

We didn't eyeball it. A CAD-exported PDF stores every line with its color, so we read the sheet's own vector data. Every wall on A201 is drawn in gray: about 1,400 LF of it. The only black linework on the plan is door swings, fixtures, tags and symbols. The renovation work on this floor is finishes, the elevator and MEP, and the community-room changes are drawn separately on the enlarged plans (sheet A207, which the dashed box on A201 points to).

So ChatGPT's 220 LF wasn't a measurement that came out a bit high. It was a plausible-sounding number for walls that aren't there. Priced as framing and board, that is real money in a bid, and the answer looked careful: formulas, a waste factor, a range.

Our own tool got it wrong too

Before writing this, we ran the same sheet through ReadMyBlueprint. It counted 1,280 LF of walls on A201: all the existing ones.

We already had a rule for this. When a plan set's legend labels a swatch "EXISTING PARTITION" or "EXISTING WALL", walls drawn in that fill aren't counted. On this sheet the rule failed for three reasons:

Before the fix
A201: 1,280 LF counted
Whole set: 7,470 LF
After the fix
A201: 1,403 LF set aside as existing, 24 LF left
Whole set: 944 LF

The 24 LF left on A201 are short wall-shaped pieces we haven't traced yet, so a person should look at them. Our tool also skips enlarged-plan sheets like A207, so it doesn't count the same wall twice. That means the community-room walls on this job are still a manual count today. And when the tool sets walls aside, it says so on the sheet ("Not counted: 1,403 LF of walls drawn in the fill this plan set's legend marks as EXISTING"), so you can check it rather than trust it.

What this means if you're tempted to use ChatGPT for takeoffs

How we ran this: ChatGPT at chatgpt.com, signed out, October 9, 2026. Paid tiers and the API may handle PDFs and resolution differently; we didn't test those. Plan set: a real 21-page apartment renovation bid set (project name withheld), sheets A201 and A901. Existing-wall linework measured from the PDF's vector paths. Our tool's numbers are from our own detection code before and after the October 9 fix.

Check it on your own plan set

Upload a real plan set and see every wall labelled matched, ambiguous or "confirm manually", plus what was left out and why. Your first one is free.

Get started