Import an Estimate from Google Sheets Without Losing Data

· 9 min read

To import an estimate from Google Sheets without losing data, clean the source table first, make sure every column means one thing, and reconcile the totals after the import. The import itself takes minutes. What decides the result is how consistent the spreadsheet is. This article describes the process I use when a studio moves a finished estimate from a spreadsheet into a project tool.

Prepare the source sheet before you import

Most import problems come from the spreadsheet, not from the tool. A table that mixes quantities with units, prices with currency symbols and subtotals with items is hard for any parser. Spend ten minutes on the source and the rest goes quickly.

  1. Make a copy. Work on a duplicate of the sheet and keep the original untouched. If the import needs a second attempt, you have a clean starting point.
  2. Keep one header row. Put column titles in a single row at the top of the table. Avoid merged cells inside the table body.
  3. One line, one purchasable item. Do not put a sofa and its cushions in one cell. If you buy it as a separate product, give it its own row.
  4. Mark rooms consistently. Use section headings (“Kitchen”, “Bedroom”) or a separate Room column, but not both in different styles on different tabs.
  5. Separate numbers from text. Quantity in one column, unit in another, price as a plain number. Avoid entries like “2 pcs.” or “approx. 450” in numeric cells.
  6. Give links their own column. A product URL in a dedicated column is more reliable than a link buried in a description.
  7. Handle subtotals deliberately. Subtotal and total rows can be read as items. Move them below the table or mark them clearly so you can ignore them.
  8. Write down the source total. You need one control number to compare against after the import.

Pre-import checklist

  • The sheet is a copy, and the original is saved.
  • There is one header row and no merged cells in the table.
  • Every row is a single product, service or fee.
  • Quantity, unit and price are in separate columns, and numeric cells contain only numbers.
  • Currency is stated either per column or per row, not guessed from symbols in the text.
  • Product links are in their own column.
  • The sheet is accessible by link if you plan to import from Google Sheets.
  • The grand total of the source is noted.

Decide which columns carry meaning

An estimate usually has more columns than the import needs. Decide which ones are essential, which are useful, and which can stay behind. The import should carry everything that you would otherwise retype by hand, and nothing you only used for private calculations.

ColumnWhy it mattersTypical problem
NameIdentifies the item in the estimate and in client documentsSupplier code and description mixed in one cell
Quantity and unitDrives the line total and the purchasing quantityUnit typed inside the quantity cell
PriceBasis for budget and totalsCurrency symbol or text in the cell, unclear whether the price is per unit or per line
Product linkSource for photo, dimensions, SKU and availabilityLink pasted as a label, or the product page no longer exists
RoomSplits the budget by spaceDifferent spellings of the same room
DimensionsNeeded for specifications and acceptance checksStored only in a free-text description
PhotoMakes the client document readableImages floating over cells instead of sitting in them
Status or “optional” flagSeparates the base estimate from extrasOptional lines counted in the total by mistake

If your sheet has internal columns such as purchase price, markup or margin, decide in advance whether they come along. They are useful for your own economics, but they should never end up in a client-facing file by accident. Keep the column naming clear so that you can tell them apart during mapping.

Handle rooms, shared items and optional lines

The structure of the estimate is where information gets lost most often. Three situations need a decision before you import.

Sections and rooms

If your estimate is grouped by section headings, check that each heading is a room name and not a category such as “Lighting”. A mixed table, where some headings are rooms and others are categories, produces a confusing structure. Pick one logic. If you need both, keep rooms as headings and add the category as a column.

Items used in several rooms

The same tile or lamp often appears in several spaces. The cleanest source is one row with the quantity split by room, for example “Kitchen 2, Bedroom 1”. One product means one purchase and one payment, so you do not want three unrelated rows with three different suppliers' orders. If your sheet repeats the product on several lines, decide whether it is really one purchase and merge the rows before importing.

Optional and alternative lines

Many estimates contain items the client has not accepted yet: an upgrade, a cheaper alternative, a decorative extra. Mark them with a clear “Optional” label in the sheet. Otherwise they inflate the total and the first reconciliation will not match.

Lines that are not products

Design fees, delivery, assembly and installation are legitimate lines, but they behave differently from products: there is no photo, no link and often no supplier. Keep them in the sheet with a clear name so that you can recognise them after the import and check their status separately.

Check the result after the import

Do not send anything to the client until you have reconciled the imported estimate against the source. Work from the big numbers down to the details.

  1. Compare the grand total. Use the control number you wrote down. If it differs, find out whether the difference is explained by optional lines, rounding or currency conversion.
  2. Compare room totals. A matching grand total can hide an item that landed in the wrong room.
  3. Count the rows. The number of imported items should equal the number of product rows in the source, minus subtotals and blank lines.
  4. Check items without a room. Rows that could not be assigned are usually collected in a separate block. Distribute them to the right rooms.
  5. Open ten items at random. Check name, quantity, unit, price, photo and dimensions against the source.
  6. Review links. Product pages that no longer exist cannot supply data. Replace those links or fill in the fields manually.

Example of a reconciliation

The figures below are an illustrative example in EUR, not real data.

CheckSource sheetAfter importConclusion
Product rows6464Matches
Grand total, EUR18,45017,250Difference of 1,200
Optional lines, EUR1,200excluded from totalExplains the difference
Kitchen total, EUR6,9006,900Matches
Items without a room03Assign to rooms

In this example the totals differ only because optional lines are not counted. That is a correct result, but you can only say so because you checked. The three items without a room are a real task: assign them before you move on.

Final checklist

  • Grand total matches the source, or every difference is explained.
  • Room totals match.
  • No items remain without a room.
  • Quantities and units are correct for items sold in packs, such as tiles or flooring.
  • Dead links are replaced or the fields are filled in manually.
  • Internal columns (purchase price, markup) are not visible in any client document.
  • A short test export looks right before it goes to the client. Our export guide covers the options.

If you are still deciding whether a spreadsheet is the right place for a live estimate at all, the comparison with Excel and Google Sheets lists what changes once the estimate is tied to procurement and finance.

How to do it in ArchiBoard

The steps below follow the import flow described in the estimate import chapter of the help center. Prepare the sheet first, as described above.

  1. Create a project if you do not have one yet: Home → “New Project”, then enter a name and city.
  2. Open the project and go to Estimates → “Import”.
  3. Upload an Excel, CSV or PDF file, or paste a Google Sheets link. The sheet must be accessible via the link.
  4. Check what each column means (name, quantity, price and so on). The system usually detects this automatically, but confirm it.
  5. Select the room to import into, or keep the breakdown from the file.
  6. Click “Import”.
  7. Wait for the background step: items are created first, then data from product links is pulled in. Dead links are marked, so you can fix them.
  8. Review the result against your control total. Distribute anything in the “No room” block to the right rooms.
  9. If something went wrong, open Activity Feed → “Undo import”, correct the source and import again.

Several things are recognised for you. Estimate sections become project rooms, either existing or new. An item split between rooms, such as “Kitchen 2, Bedroom 1”, is kept as one row with a share and total for each room. Photos from cells are placed on their items. Dimensions are taken from a column, from the description, or from the product page via the link. In PDF files, scans are also recognised and sums are checked against the total. Items marked “Optional” are not included in the total.

If the file is a supplier quote and not your own estimate, enable “This is a supplier quote” and fill in “Quote no.” and “Quote date”. More detail is in the import help chapter.

FAQ

Does the Google Sheet have to be public to import it?

The sheet must be accessible via the link you paste, so the import can read it. Check this in an incognito window before you start. If you prefer not to open the sheet, download it as an Excel or CSV file and upload the file instead.

Can I import only some of the rows?

The simplest way is to prepare the source: copy the sheet, delete the rows you do not need, and import the copy. You can also import everything and then remove unwanted items. If you remove too much, the Activity Feed lets you restore changes from the last 30 days.

What happens to photos stored in the spreadsheet?

Photos placed inside cells are matched to their rows and attached to the corresponding items. Images that float over the sheet and are not anchored to a cell are less reliable. Anchor them to cells before importing, or add photos later from product links or by hand.

Why does the imported total differ from my sheet?

The usual causes are optional lines, which are not counted in the total, subtotal rows read as items, and currency or rounding differences. Compare room totals first to find where the gap appears, then check the optional flags and any rows that ended up without a room.

Can I undo an import if the result is wrong?

Yes. Open the Activity Feed and use “Undo import” to remove the whole import in one step. Then fix the source sheet, for example the column layout or the room names, and run the import again. This is why keeping a clean copy of the original matters.

Should I keep the spreadsheet after importing?

Keep it as an archive of the starting version, clearly named and marked as no longer current. Once the estimate is live in the project, changes should be made in one place only. Two parallel versions will drift apart within a week and create confusion about which numbers are correct.

Read next