Instant tables
Types, dates and keys are inferred on upload. Fix anything in a single review step.
Drop a CSV or Excel file and Kimo infers types, keys and dates, ready to join with your live sources.
Live demo workspace with fictional data · no signup, no credentials needed

CSV / Excel on its own answers half the question. Joined with the rest of your stack in Kimo, it answers the other half.
Types, dates and keys are inferred on upload. Fix anything in a single review step.
Uploaded files behave like any other source: join them with Postgres, Stripe or GA4.
Upload is the simplest path for offline and classified environments.
Kimo maps CSV / Excel into clean, typed tables with primary keys and incremental cursors, so syncs stay fast and joins just work.
| Field | Type | Notes |
|---|---|---|
| month | string | |
| team | enum | Low-cardinality dimension |
| target | string | |
| owner | string |
A starter model Kimo suggests the moment CSV / Excel is connected. Every join is editable.
Monthly targets from a sheet joined with live revenue and signups.

Fictional data · hover the chart for daily values
No engineers, no pipelines to maintain. Kimo asks for the minimum access it needs and tells you exactly what it will read.
Up to 200 MB per file. Multiple sheets become multiple tables.
Kimo detects dates, numbers, currencies and likely keys. Override anything in one click.
Join the table with live sources. Re-upload to refresh, history is kept.
Read-only, encrypted, revocable. Credentials are encrypted with a per-workspace key, never logged, and can be rotated without breaking your models.
By default Kimo syncs CSV / Excel when you re-upload a file. You can change the schedule per table, or trigger a sync manually from the connector page.
Try it on the live demo workspace first, then connect your own account when you are ready.