Import a CSV as queryable data
Upload a CSV, review column types, follow validation, and use the published connection in a report.
Import a CSV to create a queryable data connection for your report. Unity reads the file, lets you review column types, validates the data, and publishes a dataset that the assistant and SQL tools can query.
Use Upload File in the report toolbar for this workflow. To give the assistant a template, workbook, or supporting document, use Attach reference files in chat instead.
Import your first CSV
- Open a report with editing access.
- Click Upload File in the report toolbar.
- Drop a non-empty
.csvfile into the dialog or choose it from your computer. - Keep the dialog open while the browser uploads the file.
- Review the preview. Use Import as to correct each column's type.
- Start the import and wait for Connection ready.
- Select the resulting connection, review its model, and ask the assistant to analyze it.
Inspect the imported dataset and its column types. Summarize its date
coverage, row grain, and any fields that need clarification. Then build
an HTML page with summary metrics and a searchable detail table.
Importing a file does not establish what its business measures mean. Review identifiers, date interpretation, and reusable calculations before relying on an analysis.
File requirements
| Property | Supported value |
|---|---|
| File type | CSV. Convert other tabular formats to CSV for this importer. |
| File size | Up to 256 MB in the upload UI. |
| Rows | Up to 250,000 data rows. |
| Columns | From 1 to 200. |
| Headers | Non-empty names, at most 255 characters each, unique after normalization. |
| Data | At least one data row; every row must have the expected number of values. |
The reader handles UTF-8, BOM-marked UTF-16, and a Windows-1252 fallback, and detects common CSV delimiter conventions. A malformed row, unsupported value, or exceeded limit produces an error; the importer does not quietly publish a partial dataset as complete.
Review column types
The preview shows original column names, the normalized names used by the model, sample values, and the proposed type. Search with Find a column when the file has many fields.
| Import type | Use for |
|---|---|
| Text | Names, codes, postal codes, identifiers with leading zeros, or values whose exact text must be preserved. |
| Whole number | Integers within the supported 64-bit range. |
| Decimal | Exact decimal values within the supported 38-digit precision. |
| True / false | Boolean values such as true/false, yes/no, or 1/0. |
| Date · ISO | Dates written as YYYY-MM-DD. |
| Date / time · ISO | ISO date and time values. |
| Date · US / Date · EU | Explicit MM/DD/YYYY or DD/MM/YYYY interpretation. |
| Date / time · US / EU | Date and time with the corresponding month/day ordering. |
For example, 03/04/2026 is ambiguous until you choose a date convention. An account code such as 00123 should generally stay Text.
Suggested types come from a preview. The import validates all rows afterward, so a value beyond the preview can still fail conversion. Correct the reported row or choose a compatible type and retry.
Follow import progress
| State shown in the workflow | What to do |
|---|---|
| Browser uploading | Keep the dialog open. Closing it interrupts the transfer. |
| Reading your file | Wait for the preview; server processing can continue with the dialog closed. |
| File uploaded / type review | Open the review and confirm the column types. |
| Preparing your connection | Wait for validation and publication. The status can show rows validated. |
| Connection ready | Use the new connection for analysis. |
| Check your upload | Read the specific error and restart or correct the file. |
A report status message lets you reopen an unfinished import. Cancel import stops an unfinished import; once it is ready, manage the resulting connection through the data controls.
Query the imported data
The published dataset is stored separately from chat attachments and queried by Unity's file connector using DuckDB. It participates in report connection and model workflows. Use its actual model entity and field names in SQL.
The imported dataset is a snapshot of the uploaded file. There is no automatic synchronization with the file on your computer. A subsequent import creates new imported data; existing visuals retain the connection they were saved against.
Troubleshoot an import
| Error | Resolution |
|---|---|
| Duplicate normalized column names | Rename conflicting headers in the source file. |
| Wrong number of values in a row | Correct delimiters, quoting, or the malformed row. |
| Value cannot be converted | Change the column type or correct the reported value. |
| Numeric precision exceeds the limit | Choose Text when preserving the exact original value matters. |
| Upload stopped | Select the file again and keep the dialog open during transfer. |
| Size, row, or column limit exceeded | Reduce or split the source before importing. |
See Semantic models to define calculations and HTML visuals and data to use the result in a live report page.
Questions about your environment? Contact us.