Excel, Google Sheets, and CSV in their native shape.
Spreadsheets are first-class sources today. Bring a workbook with thirty tabs and a summary sheet that pulls from twelve of them; that structure is preserved.
How spreadsheets land in Northwind.
These are the capabilities available today, not a roadmap.
Excel workbooks
Northwind is designed to preserve multi-tab .xlsx structure, including merged cells, multi-row headers, and mixed-type columns.
Google Sheets exports
Sheets exported as .xlsx or .csv land cleanly; per-sheet structure is kept.
CSV files
Comma, tab, and semicolon delimiters are detected where possible; encodings and locales are inferred rather than blindly assumed.
Per-sheet sources
Worksheets can be modeled as joinable sources where supported, so joins can target one sheet at a time.
Schema detection
Column types are inferred and normalized before insights run, so downstream work is not guessing at shapes.
Quality flags
Anomalies, gaps, and outliers are surfaced early, alongside the rows that produced them.
Source-linked
Imported sheets keep a link back to the original file, including the page or sheet reference.
Re-import after updates
When a workbook updates, downstream views can flag staleness instead of silently disagreeing.
The spreadsheet you have is the spreadsheet we expect to see.
Most ingestion tools assume the spreadsheet has been pre-cleaned: one tab, no merged cells, well-typed columns. Real workbooks do not look like that. Northwind treats real spreadsheets as the input.
A workbook with thirty tabs, a "summary" sheet that pulls from twelve of the others, and a header row that spans two cells is a normal Northwind input. The structure is preserved; each tab can be queried, joined, and cited independently.
CSVs are first-class too. Encoding and delimiter quirks are detected where possible, not blindly assumed. Locale-formatted dates and numbers are handled with locale-aware parsing where supported.
- Multi-tab workbooks: each sheet stays independently addressable.
- Merged cells and multi-row headers: preserved where possible.
- Mixed-type columns: typed without forcing the data.
- Locale and encoding quirks: detected where possible, not blindly assumed.
Try it on your worst workbook.
The kind of spreadsheet you would normally rebuild before showing anyone. Drop it in and see what comes out the other side.