Use case · 19 files
Test CSV import
CSV looks simple until real users upload files from Excel, legacy systems and other countries. These files reproduce the problems that most often break imports: encodings, byte-order marks, line endings, delimiters and quoting.
Download all with curl
# 19 files, 171 MB in total
while read -r url; do curl -LO --fail "$url"; done <<'EOF'
https://files.samplefiles.com/spreadsheet/csv/sample-100-rows.csv
https://files.samplefiles.com/spreadsheet/csv/sample-10k-rows.csv
https://files.samplefiles.com/spreadsheet/csv/sample-100k-rows.csv
https://files.samplefiles.com/spreadsheet/csv/sample-1m-rows.csv
https://files.samplefiles.com/edge-cases/encoding/utf8-bom.csv
https://files.samplefiles.com/edge-cases/encoding/utf16le.csv
https://files.samplefiles.com/edge-cases/encoding/latin1.csv
https://files.samplefiles.com/edge-cases/encoding/windows-1252.csv
https://files.samplefiles.com/edge-cases/encoding/shift-jis.csv
https://files.samplefiles.com/edge-cases/encoding/gb18030.csv
https://files.samplefiles.com/edge-cases/encoding/crlf.csv
https://files.samplefiles.com/edge-cases/encoding/cr-only.csv
https://files.samplefiles.com/edge-cases/encoding/mixed-line-endings.csv
https://files.samplefiles.com/edge-cases/encoding/semicolon.csv
https://files.samplefiles.com/edge-cases/encoding/no-header.csv
https://files.samplefiles.com/edge-cases/encoding/quoted-fields.csv
https://files.samplefiles.com/edge-cases/corrupt/malformed.csv
https://files.samplefiles.com/edge-cases/empty/header-only.csv
https://files.samplefiles.com/edge-cases/empty/zero-byte.csv
EOFRead first: Fixing CSV encoding problems: BOM, UTF-16, Latin-1 and more · CSV vs JSON vs Parquet: choosing a data format
Row counts
Clean UTF-8 CSV with a header row, for testing performance and pagination.
| File | Size | Details | Download |
|---|---|---|---|
| CSV, 100 rowssample-100-rows.csv | 15 KB | 100 rows | Download |
| CSV, 10,000 rowssample-10k-rows.csv | 1.5 MB | 10,000 rows | Download |
| CSV, 100,000 rowssample-100k-rows.csv | 15.2 MB | 100,000 rows | Download |
| CSV, 1,000,000 rowssample-1m-rows.csv | 154 MB | 1,000,000 rows | Download |
Encodings
The most common cause of garbled names (é instead of é).
| File | Size | Details | Download |
|---|---|---|---|
| CSV, UTF-8 with BOMutf8-bom.csv | 987 B | Download | |
| CSV, UTF-16 LE with BOMutf16le.csv | 1.9 KB | Download | |
| CSV, ISO-8859-1 (Latin-1)latin1.csv | 974 B | Download | |
| CSV, Windows-1252windows-1252.csv | 1014 B | Download | |
| CSV, Shift_JIS (Japanese)shift-jis.csv | 61 B | Download | |
| CSV, GB18030 (Chinese)gb18030.csv | 49 B | Download |
Line endings and delimiters
Windows, classic Mac and mixed line endings, European semicolons and missing headers.
| File | Size | Details | Download |
|---|---|---|---|
| CSV with CRLF line endingscrlf.csv | 1008 B | Download | |
| CSV with CR-only line endingscr-only.csv | 984 B | Download | |
| CSV with mixed line endingsmixed-line-endings.csv | 992 B | Download | |
| CSV with semicolon delimitersemicolon.csv | 984 B | Download | |
| CSV without a header rowno-header.csv | 947 B | Download |
Quoting and injection
Commas, quotes and newlines inside fields, plus a formula-like value for CSV-injection testing.
| File | Size | Details | Download |
|---|---|---|---|
| CSV with tricky quoted fieldsquoted-fields.csv | 329 B | Download |
Broken and empty
Short rows, long rows, an unterminated quote, and files with no data.
| File | Size | Details | Download |
|---|---|---|---|
| Malformed CSVmalformed.csv | 149 B | Download | |
| CSV with a header and no rowsheader-only.csv | 30 B | 0 rows | Download |
| Zero-byte .csv filezero-byte.csv | 0 B | Download |