> ## Documentation Index
> Fetch the complete documentation index at: https://docs.canaveral.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Reports

Build custom reports in Canaveral out of Blocks. Blocks can be data tables, text, headers, and more. Configure your columns, ordering, and. When your report configuration is ready, export to CSV, Excel, or PDF formats. Lets get started:

## Trigger the Export takeoff modal

<Columns cols={2}>
  <Column>
    <Frame>
      <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-4.25.03-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=46df3898442b73d0acfe8db6c3f2da9c" alt="Screenshot 2026 05 29 At 4 25 03 PM" width="480" height="1624" data-path="images/Screenshot-2026-05-29-at-4.25.03-PM.png" />
    </Frame>
  </Column>

  <Column>
    You can generate a report for a project in two places in Canaveral. The first is on the left sidebar of the Takeoff view. There is a `Create Report` button in the bottom of the sidebar underneath the Takeoff summary section.

    The second place is the `Create Report` button in the project's overview page in your Dashboard. You'll find this directly to the left of the green `Open Takeoff` button.

    <Frame>
      <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-4.31.08-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=1c463c5f8969b01ca2766184b192660e" alt="Screenshot 2026 05 29 At 4 31 08 PM" width="2992" height="1046" data-path="images/Screenshot-2026-05-29-at-4.31.08-PM.png" />
    </Frame>

    Clicking on either of these buttons will open up the Export takeoff modal. Continue to the next section below.
  </Column>
</Columns>

## Configure report content

<Frame>
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-4.38.38-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=0fb734f4e0ab06f3ad67c4a743ae2599" alt="Screenshot 2026 05 29 At 4 38 38 PM" width="2848" height="1552" data-path="images/Screenshot-2026-05-29-at-4.38.38-PM.png" />
</Frame>

Clicking on either of the buttons mentioned above will open the Export Takeoff modal. There's alot going on here, so lets go through the sections step by step.

### File name and format

<Frame>
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-4.40.35-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=5e58810ae9ea64fcf6239a3167c523d0" alt="Screenshot 2026 05 29 At 4 40 35 PM" width="1696" height="226" data-path="images/Screenshot-2026-05-29-at-4.40.35-PM.png" />
</Frame>

Near the top of the Export Takeoff modal, edit the file name and desired format for your exported file. The file name will default to a `YYYY-MM-DD` string appended with the project name and `takeoff` at the end, but you can edit to your liking.

Supported formats are CSV, Excel, and PDFs.

<Frame>
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-4.44.54-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=3fca4a0be06500adb9acd1dd7631cbb0" alt="Screenshot 2026 05 29 At 4 44 54 PM" width="842" height="124" data-path="images/Screenshot-2026-05-29-at-4.44.54-PM.png" />
</Frame>

Next is the action buttons, `Add block` , `Add page`, and `Add filter section`.

### Blocks

<Tip>
  **Blocks** are exactly what they sound like, "building blocks" of a report. Blocks can be tables of data, raw text, headers, and more, that make up a report configuration.
</Tip>

Clicking `Add block` opens up our available blocks panel. Choose from ductwork or piping related tables, headers or raw text blocks, or a number of other blocks useful for specific facets of Mechanical estimating.

<Frame>
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-4.50.11-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=d53d1af525032589a480f703376b6f59" alt="Screenshot 2026 05 29 At 4 50 11 PM" width="2546" height="386" data-path="images/Screenshot-2026-05-29-at-4.50.11-PM.png" />
</Frame>

### Pages

Clicking `Add page` adds a new page when creating a PDF report, or a new tab in a CSV or Excel sheet.

<Frame>
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-4.52.56-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=91bd5604734fcc565a9c4612c6cfa6a4" alt="Screenshot 2026 05 29 At 4 52 56 PM" width="958" height="482" data-path="images/Screenshot-2026-05-29-at-4.52.56-PM.png" />
</Frame>

When your report configuration has more than one page, you will see the pages widget on the left of the blocks content. Click a page button to see the content for that page. Drag and drop blocks between pages for easy layout editing.

### Filter sections

<Columns cols={2}>
  <Column>
    Filter sections let you slice takeoff data by group, zone, sheet, or system. Adding blocks to a filter section (or dragging existing blocks into them) will automatically scope the data within by that specific filter. This is useful if you want to segment your report by certain plan sheets, or only supply duct, or a specific Canaveral group you have created in your takeoff objects.
  </Column>

  <Column>
    <Frame>
      <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-6.40.55-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=57914db1ea88650cb4fa11a42a4dc855" alt="Screenshot 2026 05 29 At 6 40 55 PM" width="564" height="572" data-path="images/Screenshot-2026-05-29-at-6.40.55-PM.png" />
    </Frame>
  </Column>
</Columns>

<Frame caption="Filter sections will appear with a yellow dotted line container. Any data blocks placed inside will automatically scope to the applicable filter.">
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-6.44.44-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=c2280a82ed345aa117a6bc687bb07b4d" alt="Screenshot 2026 05 29 At 6 44 44 PM" title="Screenshot 2026 05 29 At 6 44 44 PM" className="mr-auto" width="1984" height="718" data-path="images/Screenshot-2026-05-29-at-6.44.44-PM.png" />
</Frame>

### Data tables

Data tables in Canaveral are blocks that display takeoff data. There are numerous data table blocks described above. They typically look like this, with identifier columns on the left and metadata and price columns on the right.

<Frame caption="Where applicable, a price breakdown hint will appear when hovering over cell data with a dotted line underneath.">
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-6.48.07-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=bd4a679d65c58eff29060be7e9cb507b" alt="Screenshot 2026 05 29 At 6 48 07 PM" width="1736" height="1034" data-path="images/Screenshot-2026-05-29-at-6.48.07-PM.png" />
</Frame>

### Columns

Columns in data tables are configurable. Grayed-out columns are required, but other columns are removable, and all columns can be rearranged to different orders within the table.

<Frame caption="Click and drag the six dot icon to the left of the column title to rearrange the column order to your liking. Click the cells with the plus signs to include an aggregate total cell for that column. Choose additional columns from below to add to your table">
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-6.50.27-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=9f1eb79952fcc94c0a8d03b789a85fad" alt="Screenshot 2026 05 29 At 6 50 27 PM" width="2414" height="668" data-path="images/Screenshot-2026-05-29-at-6.50.27-PM.png" />
</Frame>

### Sorting

<Columns cols={2}>
  <Column>
    <Frame>
      <img src="https://mintcdn.com/canaveral/VUrkGbRs__VUqYfw/images/Screenshot-2026-06-27-at-11.14.29-AM.png?fit=max&auto=format&n=VUrkGbRs__VUqYfw&q=85&s=50647787ba7d6131fa00864acaa0050b" alt="Screenshot 2026 06 27 At 11 14 29 AM" width="762" height="894" data-path="images/Screenshot-2026-06-27-at-11.14.29-AM.png" />
    </Frame>
  </Column>

  <Column>
    Click the double caret icon in the top right of any column to cycle between ascending, descending, and default sorting for that column.

    <Info>
      One column can be sorted at a time, and it will affect every row in a table
    </Info>
  </Column>
</Columns>

### Rounding

<Columns cols={2}>
  <Column>
    <Frame>
      <img src="https://mintcdn.com/canaveral/VUrkGbRs__VUqYfw/images/Screenshot-2026-06-27-at-11.16.44-AM.png?fit=max&auto=format&n=VUrkGbRs__VUqYfw&q=85&s=bf3af91527d5927e511d1c7770dcd9e7" alt="Screenshot 2026 06 27 At 11 16 44 AM" width="1320" height="1008" data-path="images/Screenshot-2026-06-27-at-11.16.44-AM.png" />
    </Frame>
  </Column>

  <Column>
    Click the circle icon in the top right of number-based columns to toggle rounding. Choose from None (raw value), whole number, 1 & 2 decimal place rounding.

    <Info>
      Selecting a rounding option will apply visually in the report builder as well as in the exported data.
    </Info>
  </Column>
</Columns>

## Finalize & Export

When you are ready to generate your report, click the `Export` button.

<Frame>
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-6.54.34-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=067b73627aa432e30c31cfa9c441f631" alt="Screenshot 2026 05 29 At 6 54 34 PM" width="2632" height="896" data-path="images/Screenshot-2026-05-29-at-6.54.34-PM.png" />
</Frame>

Once exported, the file will download to your local computer automatically. The file can also be found going forward in the Files section of the project page in your dashboard.

<Frame>
  <img src="https://mintcdn.com/canaveral/SwBwYmM4WQ5Ye7CY/images/Screenshot-2026-05-29-at-6.58.21-PM.png?fit=max&auto=format&n=SwBwYmM4WQ5Ye7CY&q=85&s=e40f77070cc1eef20955b2fc0723b3c2" alt="Screenshot 2026 05 29 At 6 58 21 PM" width="2952" height="1862" data-path="images/Screenshot-2026-05-29-at-6.58.21-PM.png" />
</Frame>

It can also be found in the Files page as well, visible to your entire team and always connected to the project in perpetuity.
