Google Sheets and files
Not all data lives in a warehouse. Flynt can ingest a Google Sheet into a private analytics store inside your organisation, so spreadsheet data gets the same datasets, cards, and dashboards as warehouse data. Connecting and managing sheets requires the Architect tier (T6) or above.
Ingested vs live
A BigQuery connection is live: every dataset run sends SQL to your warehouse. A sheet connection is ingested: Flynt copies the spreadsheet's contents into a per-organisation analytics store (DuckDB under the hood) and your SQL runs against that copy. The data is as fresh as the last refresh, queries cost nothing at source, and nothing leaves your organisation's store.
When you write a dataset you pick the engine to match: BigQuery datasets use BigQuery SQL; ingested datasets use DuckDB SQL.
Connecting a sheet
- Open Build → Connections and find the Google Sheets section.
- Paste the spreadsheet's URL (or just its ID).
- Authorise with the Google account that can read the sheet.
That single authorisation completes the whole connection: Flynt reads the spreadsheet, ingests every tab as its own table, and auto-creates a ready-to-use dataset per tab, named after the spreadsheet and tab. You can build cards on those datasets immediately or edit their SQL like any other dataset.
Working with ingested data
Ingested values are stored as text, with the first row of each tab treated as column headers. Cast in your SQL where you need numbers or dates:
SELECT region, SUM(CAST(amount AS DOUBLE)) AS total
FROM my_sheet_table
GROUP BY region
Each auto-created dataset's SQL already references its tab's table, so the easiest way to find a table's name is to open the dataset Flynt created for it.
Refreshing
Sheets change; the ingested copy does not until you refresh. Refresh on the connection re-pulls every tab, replaces the stored values, and picks up tabs added since you connected. Datasets keep any SQL you have customised -- only the underlying tables change. If a refresh removes or renames columns your SQL relied on, those datasets start failing at query time; loud breakage is deliberate, so schema drift never goes unnoticed. The connection list shows each sheet's last refresh time and status.
Disconnecting
Disconnecting a sheet drops its ingested tables. Datasets and cards that queried them will fail until you point them elsewhere or delete them.
No file uploads
Flynt is cloud-first: there is no .xlsx or CSV upload. A file on someone's laptop goes stale the moment it is uploaded, while a connected source can be refreshed. If your data lives in Excel, move it to a Google Sheet (or your warehouse) and connect that. Google Sheets is the only ingested source today; further ingested sources follow the same model.