Skip to content
Working with Data

Understanding Supported File Formats

Exactly which CSV and JSON layouts are accepted, the size limits, and how column types are detected.

Supported formats

FormatExtensionsRequirements
CSV / delimited text.csv, .tsv, .txtUTF-8 text. The first row is the header. Comma, semicolon, tab and pipe delimiters are detected automatically. Quoted fields are supported.
JSON.jsonAn array of objects, e.g. [{"region": "North", "sales": 120}], or an object containing a data, rows or records array.

Excel workbooks (.xlsx, .xls) are not supported. In Excel or Google Sheets, use File → Save As / Download → CSV and upload the CSV file.

Limits

  • Maximum file size: 5 MB
  • Maximum data rows: 50,000
  • Maximum columns: 100
  • Maximum datasets per account: 50

How headers and rows are handled

  • Empty header names become Column N (N is the column position).
  • Duplicate header names receive a suffix, e.g. a second amount becomes amount (2).
  • Rows with fewer fields than the header are padded with empty values; extra fields are ignored. A warning reports how many rows were affected.
  • Completely empty lines are skipped.
  • In JSON, fields missing from a record are left empty, and nested objects or arrays are stored as JSON text.

How column types are detected

Types are inferred from the non-empty values of each column, using these rules in order:

  1. Boolean — every value is one of true/false, yes/no, y/n or t/f (any capitalization).
  2. Numeric — at least 95% of values are numbers. Accepted: 1234, -12.5, 1,234.56 (comma as thousands separator), 1e3, and percentages such as 12%, which is read as 0.12.
  3. Date — at least 95% of values are ISO dates YYYY-MM-DD (optionally with a time, e.g. 2025-03-31T14:00:00Z) or YYYY/MM/DD. Ambiguous formats such as 03/04/2025 are not treated as dates, because they could mean 3 April or 4 March.
  4. Categorical — a limited number of short, repeated values (no more than half the number of rows, at most 200 distinct values, average length up to 60 characters).
  5. Text — everything else, such as free-form comments or unique identifiers.

Values that do not match the detected type (for example n/a in a numeric column) are counted as invalid in the data quality panel and excluded from calculations. The original value is preserved in the dataset.