# Takeoff

> Measure areas, lengths and counts on a calibrated drawing in BuildX Studio, import rows from a CSV, price them per item, and export a CSV or PDF takeoff summary.

Source: https://docs.buildx.pro/docs/studio/takeoff/

Takeoff in BuildX Studio is tied to a drawing file inside a submittal. Each takeoff row (description, quantity, unit, category, and rates) belongs to one drawing file and flows into the job's [estimate workbook](https://docs.buildx.pro/docs/studio/estimate.md) and the [Unit Rates](#unit-rates) library.

## What you can do

- Set a page's scale and measure areas, lengths and counts on the drawing.
- Add takeoff rows to a drawing file with **Import rates CSV**.
- Set a unit rate per row and export the rows with **Export** (CSV or PDF).
- See your rows priced in the estimate workbook.

## Add takeoff rows from a CSV

1. Make sure the job has a submittal with at least one PDF uploaded. Rows need a drawing file to belong to.
2. Go to **Unit Rates** in the sidebar and click **Import rates CSV**.
3. Click **Pick a CSV file**. The file needs a header row with a `description` column. Studio also reads `quantity`, `unit`, `mat_rate`, `labor_rate`, and `category` (it accepts common variants such as `qty`, `uom`, `material_rate`, `trade`).
4. Check the preview. Rows with a blank description, a negative or non-numeric quantity, or a bad rate are listed under "need attention" and skipped. A blank quantity counts as 1, and a blank category becomes "General".
5. In **Add to sheet**, pick the drawing file the rows belong to.
6. Click **Confirm import**. Studio says how many rate rows were added.

Each row now shows on the job's estimate page and in the Unit Rates library. Studio keeps each row's category, quantity, and rates. It labels the row with its category and type, for example "Drywall · area takeoff", and sets its unit from the `unit` column: sq ft, sf, or m2 become an area row in sq ft; ft, lf, or m become a linear row in ft; anything else becomes a count row in ea. The description text from the file isn't kept, so use the `category` column to tell rows apart.

## Price and export from the drawing preview

1. Open the submittal and click the eye icon on the drawing file. The **Drawing Preview** opens.
2. Click **Export** in the preview toolbar (it's active once the file has takeoff rows). **Export Takeoff Data** opens.
3. Review the **Summary** (**Total Items**, totals by type, **Estimated Total**).
4. Under **Unit Rates**, type a rate per row. Rates save to the row and show **Saved**.
5. Set a **Filename**, then click **Export CSV** or **Export PDF**. The PDF is a takeoff summary (default name "takeoff-summary").

## Measure on the drawing

The drawing preview has a toolbar with **Select** (V), **Area** (A), **Linear** (L), **Count** (C), and **Scale** (S). Pick a measuring tool to measure on the sheet. Clicks snap to the drawing's own lines and corners when the PDF has vector geometry.

### Set the page's scale first

Scale is set per page. Area and length need it; counts don't.

- **From the title block:** pick the drawing's scale (for example 1/4" = 1'-0") in **Scale p.** above the sheet.
- **From a known length:** pick **Calibrate on a known length…** (or the **Scale** tool), click both ends of a dimension you know, type its length in feet and inches, such as `24'-0"`, and click **Set scale**.

Studio confirms "Scale set for page 1". If you try Area or Linear on a page without a scale, Studio asks you to set it first and saves nothing.

### Measure

1. Pick **Area**, **Linear**, or **Count**.
2. Click points on the sheet. For an area, outline the shape; for a length, click along it; for a count, click each item.
3. Give the measurement a label, such as "Drywall" or "Baseboard", and click **Save**. The label becomes its category in the workbook.

While measuring, **Esc** cancels the current measurement and **Backspace** removes the last point. Saved quantities are real units: square feet for areas, linear feet for lengths, and each for counts. They stay with the sheet after you reload.

You can still add rows from a spreadsheet with **Import rates CSV**.

## Unit Rates

**Unit Rates** ("Unit rate library") rolls up every takeoff row across your jobs:

- Stats: **Catalog entries**, **Jobs contributing**, **Rows measured**, **Priced entries**, and a **Catalog coverage** bar (entries with both material and labor averages).
- Table: **Description**, **Category**, **Unit**, **Mat avg**, **Labor avg**, **Combined avg**, **Jobs**, **Last used**, each tagged **Priced** or **Unpriced**.
- Edit the material or labor rate under each average. The edit changes the most recent row that used that item.
- **Use in estimate** opens the estimate for the job where the item was last used.
- Search, and filter by category.

## Good to know

- MyBuildX also has a [Takeoff page](https://docs.buildx.pro/docs/dashboard/takeoff.md). Studio takeoff rows don't show up there; the two keep separate data today.
- Deleting a submittal deletes its takeoff rows.

## Related

- [Estimate workbook](https://docs.buildx.pro/docs/studio/estimate.md)
- [Projects and submittals](https://docs.buildx.pro/docs/studio/projects-submittals.md)
- [Bidding a job](https://docs.buildx.pro/docs/gcs/bidding-budget-spine.md)
