Sample CSV & Excel Files (Test Data Download)
Ready-made practice and test data, any size, in the format you need.
Choose the data
GST invoices are India’s: names, states and rupees from India.
More options
The same seed gives the same file every time.
First 10 rows
Columns
| Column | Type | What it holds |
|---|
Things to try
About the Sample CSV & Excel Files (Test Data Download)
Ready-made data sets to download for practice, teaching and testing: sales transactions, employees, customers, e-commerce orders, inventory, student marks, India GST invoice lines, daily website analytics and hourly sensor readings. Each has realistic columns whose numbers add up — a sale’s net amount is quantity × price minus the discount, every employee’s manager is a real, more senior row of the file, every GST line splits into CGST and SGST or IGST correctly.
Pick the data set, the region (names, places and currency), the format — CSV, Excel (.xlsx), JSON, JSON Lines, SQL, TSV or Parquet — and the size: from 10 rows to 1,000,000, or a file of an exact size such as 10 MB for testing an upload limit. The files are made in your browser from a seed, so the same choices always give the same file, nothing is uploaded or stored on a server, and you may use the data for anything.
How to use it
- Choose a data set. Its columns, what each one holds, the first rows and some practice exercises appear below.
- Choose the region for names, places and currency (it starts with your country where the tool has one), and the dates the data should cover.
- Choose the format and the size: a number of rows, or a file size (1 MB = 1,000,000 bytes, or 1 MiB = 1,048,576 bytes).
- Press Download. Large files are made in the background with a progress bar; Cancel stops at any time. The same seed gives the same file again; change it for different rows.
Examples
Customers · CSV · File size 10 MB
customers-10MB.csv: 60,000 to 72,000 rows (names are longer in some regions than in others), just under 10,000,000 bytes — the largest whole number of rows that fits
JSON and SQL files can be padded to the exact byte (with white space or an SQL comment, which every reader ignores); CSV files stop at the last complete row, so no reader sees a broken one.
Sales transactions · 100 rows · CSV
order_id,order_date,region,city,sales_rep,product,category,quantity,unit_price,discount_pct,net_amount,payment_method,status SO-100001,…
The preview on the page shows the real first rows of the file you will download.
Common uses
- Practising Excel or Google Sheets: pivot tables, VLOOKUP or XLOOKUP between the Customers and Orders files, charts, conditional formatting.
- Teaching SQL, Python or R with a data set whose results can be checked — the SQL format loads straight into SQLite, PostgreSQL or MySQL.
- Testing an upload form, an import or a pipeline with a file of a known size or row count, including a million rows.
- Filling a demo or a prototype with data that looks real but describes no real person.
The data sets
- Sales transactions: order, date, region, city, sales rep, product, category, quantity, unit price, discount and net amount, payment method, status.
- Employees (HR): ID, names, e-mail, department, job title, level, manager (a real row of the file), hire date, type of employment, office, salary, rating.
- Customers: ID, names, e-mail, phone, city, state, postal code, country, sign-up date, segment, loyalty tier, orders and lifetime value.
- E-commerce orders: order ID, customer ID, date and time, channel, items, subtotal, discount, shipping, tax and total, payment and delivery status.
- Inventory: SKU, product, warehouse, bin, stock, reorder level and quantity, cost, price, stock value, supplier, lead time and a reorder flag.
- Student marks: five subjects out of 100, total, percentage, grade, result and attendance.
- India GST invoice lines (in rupees): GSTINs, place of supply, HSN or SAC code, quantity, rate, taxable value, GST rate, CGST and SGST (within a state) or IGST (between states).
- Daily website analytics and hourly sensor readings: time series with a trend, a daily or weekly cycle, noise and occasional spikes or warnings.
Invented, and safe to share
No row describes a real person or company. Names and places come from the open-source faker project’s lists for each region. E-mail addresses use only the domains RFC 2606 reserves for examples — example.com, example.net and example.org — whatever the region, so a test message sent to them never reaches a real mailbox (look-alikes such as example.de are ordinary registered domains, so they are not used). Phone numbers come only from ranges kept for fiction: 555-0100 to 555-0199 for the United States and Canada, and the UK’s drama numbers (07700 900000–900999 and 020 7946 0000–0999) for every other region. GSTINs have the right shape but a wrong check character, so none can belong to a real business. GST rates and HSN codes in the invoice lines are examples — for a real invoice, check the CBIC GST rate notifications.
Formats
- CSV: comma- or semicolon-separated, UTF-8, optionally with a byte-order mark so Excel shows accents and ₹ correctly; dates as YYYY-MM-DD.
- Excel (.xlsx): one sheet with a bold, frozen header row; numbers as numbers, dates as real Excel dates, TRUE/FALSE as booleans; up to 1,048,575 rows (Excel’s limit).
- JSON (an array of objects), JSON Lines (one object per line) and TSV.
- SQL: a
CREATE TABLEand oneINSERTper row, in SQL that PostgreSQL, MySQL, MariaDB and SQLite accept (SQL Server and Oracle need small changes: BIT instead of BOOLEAN, TOP instead of LIMIT). - Parquet: typed columns (INT64, DOUBLE, BOOLEAN, DATE, TIMESTAMP, UTF8 text), Snappy compression, row groups of 100,000 rows — readable by pandas, Polars, DuckDB, Spark and the Parquet viewer.
Limitations
- Up to 1,000,000 rows, and text files up to 200 MB (a million rows of JSON or SQL is larger, so choose fewer rows there). Excel files of a million rows take about half a minute to make.
- Exact file sizes are for text formats. Excel and Parquet files are compressed, so their size depends on the data: choose a number of rows for them.
- The data are realistic in shape, not in statistics: do not draw real-world conclusions from them.
- For your own columns, rules and linked tables, use the Mock Data Generator.
Privacy
Everything happens in your browser. What you enter or open here is not uploaded or stored by MySmartCoPilot.
Frequently asked questions
Where can I download a sample CSV file with 1 million rows?
Here: choose a data set, Number of rows → 1,000,000 and CSV, then press Download. A million sales rows are about 115 MB of CSV and take a few seconds; in Parquet the same rows are about 20 MB.
How do I make a file of exactly 10 MB?
Choose File size, 10 and whether you mean 10,000,000 bytes (MB) or 10,485,760 bytes (MiB) — upload limits use both. JSON and SQL files can be padded to the exact byte; CSV, TSV and JSON Lines files end at the last complete row, less than one row (a few hundred bytes at most) under the size.
Is the data real? Can I use it freely?
No, it is invented, and yes: the files are made on your device and you may use, change and share them for any purpose. Contact details are built so they can never reach a real person (reserved e-mail domains and fictional phone ranges).
Why does the same file come out every time?
The rows come from a pseudo-random generator started from the seed, so the same data set, region, dates, seed and size give exactly the same file — useful for tests and classes. Change the seed for other rows.
Can I get related files, such as customers and their orders?
Yes: the customer IDs in E-commerce orders run from C000001 to a quarter of the order count, so a Customers file with that many rows matches every order. Download both and join them on customer_id — in Excel, SQL or the Run SQL on CSV tool.
Which GST rates do the invoice lines use?
Rates of the current GST slabs — 0, 3, 5, 18 and 40 % — chosen to look typical for each item. They are examples for practice, not the legal rate of each HSN code; check the CBIC rate notifications for real invoices.