Upload a CSV

CSV is the fastest way to get data into OneAnalytics — no credentials, no network, no waiting. Drop a file, click Import, build a report.

Upload

From the home screen, Sources → Add → CSV, then drop a file (max 500 MB per file on Starter, 5 GB on Growth, 50 GB on Scale).

We detect:

  • Encoding — UTF-8, UTF-16 LE/BE (with BOM), cp1252, and a safe latin-1 fallback. Explicit override in the dialog.
  • Delimiter — comma, semicolon, tab, pipe, or auto-sniff from the first kilobyte.
  • Quoting — RFC 4180 plus relaxed mode (unescaped inner quotes treated literally).
  • Header row — first row assumed to be headers; toggle off if not.

Type inference

Each column is sampled (first 10 000 rows) and typed to one of:

  • integer (int64)
  • float (float64)
  • boolean (true/false/yes/no/1/0)
  • date / timestamp (ISO 8601, DD/MM/YYYY, DD-MMM-YYYY, Excel serial)
  • string (fallback)

Override any column's type in the Schema tab before clicking Import. Rows that fail to coerce go to a _errors sidecar you can download.

Multi-file datasets

Upload multiple files with the same schema to one dataset — we concatenate them. A __source_file__ column is added automatically so you can filter by origin.

Re-imports

Re-uploading a file to an existing CSV dataset is controlled by Append mode vs. Replace mode:

  • Append — new rows are added; old rows stay. Good for daily snapshots.
  • Replace — the whole dataset is wiped and rebuilt. Good for corrected extracts.

Indian number / date formats

DD/MM/YYYY, ₹1,23,456.78 (Lakh/Crore grouping), and 05-Apr-2026 all parse correctly. Set the locale to en-IN in Workspace Settings if auto-detection picks the wrong one.

Limits

  • 500 columns per file
  • 50 M rows per CSV dataset (above that, use Postgres/Snowflake/BigQuery import)
  • 200 B maximum row length

After import

The dataset lands in Ready state with row_count and size_bytes set. Jump straight to New report or enrich with a semantic model first.