Documentation

Cost Impact — What triggers costs

Which markup tools produce cost rows, why a calculation looks wrong or missing, smart scope detection, and the best-practice workflow for accurate estimates.

Cost Impact — What triggers costs

Which Tools Trigger Cost Calculations

The cost engine only runs on tools that represent measurable physical work. Pure dimension annotations (calibration, single-segment linear measurements, radius/diameter/angle) do not trigger a calculation — they describe a length on paper but do not represent material to install or remove.

Key / ControlAction
Eligible (triggers calc)Rectangle, Polygon, Cloud, Polyline, Line, Freehand, Ellipse, Measure Area, Measure Polylength, Measure Count, Double Line
Not eligible (annotation only)Calibrate, Linear measurement, Radius, Diameter, Angle, Text/Typewriter, Stamp, Signature, Highlight, Cutout/Redact
Tip: If you want a cost estimate for a region you've drawn with the Linear measurement tool, re-draw it with Measure Area or Polylength — the cost engine needs an area or perimeter quantity to multiply by a unit cost.

You don't have to memorize the table. Figure 2 shows the Markup, Measure, and Drawing toolbars: every tool that produces a cost row carries a small rust dot in its top-right corner. If a tool has the dot, drawing with it adds to the running total; if it doesn't, the markup is annotation only.

The Markup, Measure, and Drawing toolbars docked at the top of the workspace, with small rust-colored dots in the top-right corner of the cost-eligible tool buttons — rectangle, ellipse, line, and polyline on the Markup row; the area and count tools on the Measure row; and the polyline, polygon, and material-hatch tools on the Drawing row. Annotation-only tools such as text, stamp, and the linear measurement carry no dot.
Figure 2. Cost-eligible tools carry a rust dot in their top-right corner across the Markup, Measure, and Drawing toolbars; tools without the dot are annotation only.

When Calculations Look Wrong or Missing

The cost engine is best-effort: it derives quantities from your geometry and matches them to the closest item in the library. The most common reasons a calculation looks wrong or doesn't appear:

Key / ControlAction
No calibration setArea/length tools produce a 0 quantity until you set a known length via Measure → Calibrate on the page
Generic PDF, no element typeOn non-BIM PDFs the engine has no IFC type to match against — right-click the markup → Set Element Type to assign one (promotes to High confidence)
Confidence shown as "Very Low" (grey dot)Engine fell back to MISC-001 because no element/keyword/tool match was found — click the pencil (✎) on the row to manually pick the correct cost code
Quantity looks off by a factor of 10/100/1000Calibration was set with the wrong known length or unit — re-calibrate the page; existing markup quantities will refresh on the next interaction
Scope keyword not picked upAdd the action verb (demo / replace / repair / install / paint) to the markup subject or description so the engine knows whether to generate demo + install rows or just one
Cost is $0 for a known-good markupThe matched cost-library item may be missing material/labour data — open Costs → Cost Library and edit the row, or pick a different code via the pencil icon
Tip: Cost calculations and summary refreshes run silently in the background — they never raise a toast on failure. If a markup didn't get costed, check the row's confidence dot in the breakdown panel: grey/amber means the engine wasn't sure, and you can override the code with the pencil icon. If a calc is genuinely failing for diagnostic purposes, open DevTools to see the [CostEngine] console log.
Workflow
Recovering when the cost panel shows empty on PDF open
  1. Glance at the markups sidebar. If it shows your markups (Material Hatch, polygons, etc.) but the Cost Impact toolbar shows $0.00, the cost rows haven't been populated for this PDF yet.
    If markups are visible in the sidebar but the toolbar reads $0.00, your historical cost rows are missing — almost always because they were never written during prior sessions (a class of silent-fail bugs we've since fixed).
  2. Click the Recalculate button on the Cost Impact toolbar. The engine iterates every cost-eligible markup on the canvas and re-runs the calc. A toast confirms how many markups were processed.
    LocusBIM auto-detects this state on PDF open and fires the recalc for you. If it didn't auto-fire (e.g. live updates are disabled in your preferences), do it manually here.
  3. If you have multi-page PDFs with markups on more than the current page, repeat the Recalculate click after navigating to each page that has cost-eligible markups.
    Multi-page caveat: Recalculate today only iterates the markups on the currently-loaded canvas (i.e., the current page). To recalc page 2's markups, navigate to page 2 first, then click Recalculate. A document-wide recalc that iterates all pages without page-flipping is on the roadmap.

Best-Practice Workflow for Accurate Costs

  1. Calibrate the page first — Measure → Calibrate, then click two points with a known real-world distance. Required for any area/length-based cost calculation.
  2. Pick the right tool for the quantity you want — Measure Area for square metres (drywall, flooring), Measure Polylength for linear metres (baseboard, duct runs), Measure Count for unit quantities (light fixtures, outlets).
  3. Right-click → Set Element Type on generic PDFs so the engine doesn't have to guess. This single step promotes the calc to High confidence.
  4. Add a scope keyword to the markup subject (demo, replace, repair, install, paint) so the engine knows the work type.
  5. Review the breakdown panel — green/blue dots are trustworthy; amber and grey dots want a manual code via the pencil (✎) icon.
  6. Pick your city's region factor in Costs → Cost Library so the unit costs reflect local labour/material indices.

Smart Scope Detection

The engine reads the issue title or markup description for action keywords and generates the appropriate rows automatically:

Key / ControlAction
demo / remove / tear outDemolition row only (savings sign)
replace / swapDemo row + install row + optional paint finish for wall-family items
repair / patch / fixSingle row at 40% of install cost
paint / finish / coatFinish coat row (PAINT-001)
new / install / addInstall row only (default when no keyword found)
Related topics
  • Cost Impact — OverviewLive rough-order-of-magnitude cost estimates as you mark up PDFs and 3D issues: first-time setup (calibrate scale), how it works, and the core budgeting workflows.
  • Cost Impact — Element types & mappingHow markups map to CSI cost codes: IFC type mapping for 3D, mapping your own Revit categories, and setting element type on generic PDFs.
  • Measurement & CalibrationCalibrate drawing scale and run linear, area, radius, diameter, angle, polylength, and count measurements on PDFs.