Google Sheets
Sync a Google Sheet into your warehouse: share it with Orcabase, paste the link, and every tab becomes a table that refreshes on a schedule.
Sync a Google Sheet into your warehouse, and every tab becomes a table you can query, chart and ask about. The copy refreshes on a schedule, so the numbers in Orcabase follow the sheet.
Before you start
- The Google Sheet, and permission to share it.
- A DuckDB warehouse in Orcabase for the data to land in. See Hosted by Orcabase.
- The Admin role in your organization.
Sync a spreadsheet
Pick Google Sheet
Go to Sync data then Add source and pick Google Sheet, under Built into Orcabase.
Share the sheet with Orcabase
The form shows an email address with a copy button. In Google Sheets, click Share and add that address as a Viewer. Orcabase reads the sheet as that address; it never needs to edit.
Paste the link
Copy the spreadsheet’s link from your browser (it starts with
https://docs.google.com/spreadsheets/d/) into Spreadsheet link. Pick your warehouse under Sync into, then click Connect.Choose tabs and a schedule
Orcabase lists the tabs it found. Tick the ones to sync, and tick Also sync tabs added later if you want new tabs picked up automatically. Set the Schema (for example
sheets) and how often to sync, then click Start syncing.
How tabs become tables
| In the sheet | In Orcabase |
|---|---|
| Each tab | A table named after the tab, in lowercase with accents folded: Đơn hàng becomes don_hang, Orders 2025 becomes orders_2025. |
| The first row | The column names, kept as written. |
| A blank column name | Named by position, like column_3. |
| The same column name twice | The second gets a number, like Amount_2. |
| Cell values | Types are detected from the data: numbers, dates, true/false and text. |
Column names keep their spaces and capitals, so in SQL put names like that in double quotes:
SELECT "Order Date", SUM("Amount") AS revenue
FROM sheets.orders
GROUP BY "Order Date"Tips for sheets that sync well
- Put the column names in row 1, with the data right under them. Titles or notes above the header become data.
- Keep one kind of value per column: a column of amounts shouldn’t have “n/a” in it.
- Give each dataset its own tab rather than stacking two tables in one.
- Use short, plain column names, like
order_date, so SQL doesn’t need quotes.
Note
If you stop sharing the sheet with Orcabase’s address, the next sync can’t read it and the source shows an error. Share it again to resume. If the Google Sheet option shows as unavailable, Sheets syncing isn’t set up on your plan yet: message us.
Something unclear or missing? Troubleshooting covers the common errors, or message us.