● Blog

We ran a real 21-page apartment plan set through our own tool — here's exactly what happened

By · · Updated · 6 min read

Most "case studies" you'll read from a takeoff-software vendor are curated wins. This one isn't curated — it's a real end-to-end run against a real 21-page apartment building plan set (a multi-building project we're calling "Freeport Square" here), uploaded through the live product, results exported, numbers reported exactly as they came out. Including the part that didn't fully resolve.

Update: an early run counted walls on ceiling plans, elevations and detail sheets as well as floor plans. That is fixed. On our Freeport Square test set, 68.9% of walls now auto-match and 99.8% resolve after one "Confirm all". Read what changed.

The headline number

68.9%
of walls auto-matched to a confirmed material spec on our Freeport Square test set
99.8%
of walls resolved after one "Confirm all"

Every wall on the plan set was measured — that part worked cleanly, no errors, no crashes, real processing time, real CSV export. Of the 25 distinct wall types the plan contained, 2 (both wood-stud partition types) came back with a full matched material spec: stud gauge, track, drywall sheet count, insulation bag count, sheet citations and all.

MaterialFirst-run result, before the fixes below
2x6 wood studMatched: stud, track, drywall sheet and insulation bag counts, with sheet citations
2x4 wood studMatched: stud, track, drywall sheet and insulation bag counts, with sheet citations
23 other wall types (partition & CMU, various thicknesses)Flagged "SPEC UNKNOWN — confirm manually," not guessed

The other 23 wall types didn't get guessed. They got flagged.

This is the part that actually matters more than the headline percentage. The remaining 23 wall types — the majority of the total linear footage — came back with an honest note attached to every single one: "no legend text matched this thickness — confirm manually." No stud gauge was invented. No CMU block size was assumed. The tool measured the geometry correctly and then declined to guess the spec it couldn't confirm.

We didn't stop at the number — we found the actual cause

Update, September 25, 2026 — what this test changed. We went back to this same plan set and dug deeper than the first pass below. Two things turned out to be real bugs on our side, and both are now fixed in the live product:

Result on this exact set: 68.9% of walls matched automatically (99.8% after one Confirm all), with nothing guessed. And the walls that still need a human now come back as one short list: the plan's own material (wood here) is pre-filled, tiny leftover fragments are tucked away, and one Confirm all click finishes the count. We also got one thing wrong below: the wall-type legend on sheet 21 is read correctly; what's left unmatched is mostly exterior walls and openings the legend never lists — exactly what a human should confirm.

Rather than publish the first-run number and move on, we opened the plan PDF's own text layer directly to find out why. Here's what we found: this plan set's wall-type legend is printed on the same sheet as the door schedule, with the two tables' columns interleaved in the drawing layout. When text is extracted from that sheet, the door-schedule and wall-type-legend text comes out scrambled together instead of in clean reading order — a structural quirk of how this specific architect laid out that one sheet, not a generic flaw in how plan sets are typically formatted.

What the auto-reader saw Wall-type legend + door schedule text interleaved on one sheet
What that caused 23 of 25 wall specs correctly flagged as unconfirmable, not guessed
This is exactly the scenario our "Import a wall-type schedule from Excel" feature exists for. When the automatic legend read can't confidently resolve a sheet like this one, you can type the wall-type-to-assembly mapping into a spreadsheet yourself — TYPE / STUD SIZE / GYP THICK or TYPE / WALL WIDTH columns — and upload it instead of confirming each wall one at a time in the UI. Every row stays reviewable before anything saves.

What this actually means if you're evaluating a takeoff tool

We're publishing this the same way we published the real bug we found in our own insulation detection — because a specific, inspectable failure mode you can verify is worth more than a marketing number you can't.

Frequently asked questions

What was tested?

A real 21-page apartment plan set (Freeport Square), run end to end through ReadMyBlueprint. This page covers the first run, which exposed a wall-legend text problem on one sheet. In the tour run on the same set, 68.9% of walls matched automatically and 99.8% after one Confirm all.

Why did so few walls match on the first run?

The wall-type legend shares a sheet with the door schedule and the two tables' columns are interleaved, so the extracted text came out scrambled. It is a layout quirk of that one sheet, not a general property of plan sets.

Is this a general accuracy number?

No. It is one plan set. Plans that draw partition types as graphic details instead of text legends can match far less, so expect to confirm walls by hand on those.

See what confirm-before-it-counts actually looks like

Upload a real plan set and see every reading labeled honestly — your first one is free.

Get started