Skip to main content

Importing BOQ Tables

A Bill of Quantities (BOQ) table is the foundation of every project in Conio. It defines what work needs to be priced: the descriptions, quantities, and units.


Supported sourcesโ€‹

Conio imports tables from two sources:

  • Google Sheets โ€” the sheet must be shared with "Anyone with the link โ€” Viewer" access before Conio can read it.
  • A local file โ€” .xlsx, .xls, or .csv โ€” browsed directly from your computer. No upload to Google Sheets is required.

Use whichever is more convenient; both go through the same import dialog below.

Preparing a Google Sheetโ€‹

If your BOQ is already in Google Sheets: confirm it is shared correctly:

  1. Click Share (top-right in Google Sheets).
  2. Under General access, set to Anyone with the link โ†’ Viewer.
  3. Copy the share URL.

If your BOQ is in Excel or CSV and you'd rather use the Google Sheets path:

  1. Go to sheets.google.com and click Blank.
  2. In the new sheet, go to File โ†’ Import โ†’ Upload and select your file.
  3. Choose Replace spreadsheet and click Import data.
  4. Share the sheet as described above.

Otherwise, skip straight to the import walkthrough below and browse for the local file directly.

Multi-sheet workbooksโ€‹

If your Google Sheet or Excel workbook has multiple sheets (tabs), Conio will show a sheet selector after you load it. You can import each sheet as a separate BOQ table, or select only the relevant tab.


Import walkthroughโ€‹

Step 1 โ€” Open the import dialogโ€‹

  1. Click Table Manager in the left sidebar.
  2. Click Import Datasets (top-right of the header).

Import Dataset drawer showing the source field, Browse button, and Dataset Type radio cards

Step 2 โ€” Provide the sourceโ€‹

Pick whichever matches your file:

  • Google Sheets: paste the share URL into the source field and press Tab/Enter to load it.
  • Local file: click Browse and select your .xlsx, .xls, or .csv file from the native file picker.

Conio validates access (Google Sheets) or reads the file (local) and shows a preview. If a Google Sheet is not publicly shared, an error will appear โ€” re-check the sharing settings and try again.

If the source has multiple tabs, a Sheet dropdown appears. Select the tab containing the BOQ data. Under Dataset Type, select Bill of Quantities (BOQ).

Step 3 โ€” Ingestโ€‹

Conio detects your Description, Unit, Quantity, and (optionally) Item No. columns automatically by scanning the header row for recognizable labels โ€” there is no manual column-mapping step. Click Ingest Dataset.

Before you import

Column detection depends on your header row using recognizable labels, and heading rows depend on having a Description with no Unit. See Appendix E โ€” Accepted File Formats for the exact column keywords and heading-detection rule before you prepare a new sheet.

If the header row can't be confidently identified, the import fails with an error rather than guessing โ€” re-check your header labels against Appendix E and try again. The table appears in Table Manager immediately on success.


What Conio extractsโ€‹

From each row, Conio stores:

FieldExample
leaf_description"Excavation in hard rock, depth 0โ€“1.5 m"
ancestor_path"Substructure > Earthworks > Excavation"
quantity42.5
unitmยณ

The ancestor_path (the chain of heading rows above each item) plays an important role in matching quality. Conio uses it to narrow the search scope before comparing leaf descriptions. See Scenario Studio for details.


Troubleshooting importsโ€‹

SymptomCauseFix
"Access denied" or URL error (Google Sheets)Sheet not shared publiclyOpen the sheet โ†’ Share โ†’ Anyone with the link โ†’ Viewer
Import fails with "could not detect column headers"Header row doesn't use a recognized labelRename your header row using the column keywords in Appendix E, then re-import
All items show zero quantityQuantity column wasn't recognized, or is genuinely blank in the sourceCheck your Quantity header against Appendix E; quantities may be in a separate sub-column the parser didn't pick up
Ancestor path is flat (no headings)Headings not detectedEnsure heading rows have a Description but a blank Unit and zero Quantity โ€” see Appendix E โ€” heading detection
Garbled characters in descriptionsSpecial characters in sourceRe-save the source file as UTF-8 before importing

Next stepโ€‹

Import a rate table โ†’