While there are no limits on the amount of data a CSV file can contain, there are limits on the number of rows that can be imported into a spreadsheet or similar software program and this varies by spreadsheet. Row Zero is the most powerful spreadsheet and can handle billion row datasets. That's 1000x bigger than the Excel row limit of 1,048,576 rows. Google Sheets has a limit of 10 million cells, but in practice, typically struggles with big data even more than Excel. If you want to open big CSV files in a spreadsheet, Row Zero is your best choice. You can open, edit, analyze, pivot, and chart nearly any CSV file.
In this guide, we explore the CSV file limits by spreadsheet. Skip to a specific section or continue reading for the full guide.
- CSV row limit by spreadsheet
- CSV column limit by spreadsheet
- CSV import limits of common tools
- Working with giant CSV files
- Alternative big CSV editors
- Conclusion
CSV Row Limit by Spreadsheet
While there is no CSV row limit for the file format, each spreadsheet has a CSV max row limit. Here's a breakdown by spreadsheet row limit, from largest to smallest:
Row Zero - 1+ billion rows
Row Zero is the best spreadsheet for big data. You can easily open CSV files more than one million rows and still have plenty of space to edit and analyze the data with pivot tables, charts, etc. Row Zero can even support billion row datasets on Enterprise plans.
Excel - ~ 1 million rows
The Excel max row limit is 1,048,576 rows for both desktop Excel and Excel 365. If you try to open a open a big CSV in Excel over 1 million rows, you will get a warning, "This data set is too large for the Excel grid."
If you proceed, Excel will only import the first 1,048,576 rows of the file.
It's possible to load a larger CSV file into Excel using features like Data Model, Power Query, or Powerpivot to create pivot tables and charts or analyze subsets of the data, but you'll still only be able to load the first 1,048,576 rows into an Excel sheet. Also keep in mind that while you can load 1 million rows into Excel, you may hit performance issues when analyzing large files, especially if you're doing heavy computations or using volatile functions. He are common reasons why Excel slows down before its limit.
If you need to open a CSV file too big for Excel, Row Zero is a good Excel alternative for big files.
Google Sheets - 10 million cells*
Google Sheets supports a maximum of 10 million cells. While it's possible to have a simple spreadsheet of 10 million rows and 1 column, in practice Google Sheets can start struggling once you get over 100,000 rows, especially if you're doing heavy computations, connecting to external data, or using problematic functions. Google Sheets has an import limit of 100 MB. If you try to open a large CSV file in Google Sheets, you'll get a warning that the file is too large to import.
He are common reasons why Google Sheets slows down before its limit. If your CSV file is too big for Google Sheets, Row Zero is a good Google Sheets alternative for big data.
CSV Column Limit by Spreadsheet
Just like rows, there is no CSV column limit for the file format, but each spreadsheet has a CSV max column limit. Typically, CSV files are much longer (more rows) than they are wide (columns) so the column limits are much lower than the row limits and you're much more likely to hit a row limit than a column limit. Here's the spreadsheet column limit from largest to smallest:
- Row Zero column limit is 18,278 columns so the current max column is ZZZ.
- Google Sheets column limit is 18,278 columns so the Google Sheets max column is ZZZ.
- Excel column limit is 16,348 columns so the Excel max column is XFD.
Why is the column limit so much lower than the row limit?: Data tends to be added as new rows and not as new columns. So as datasets get bigger they tend to add rows but not add columns. In general, most files have signficantly more rows than columns.
CSV import limits of SaaS tools
If you need to import your CSV to a CRM or SaaS tool, you'll likely face CSV file import limits. These can be either a row limit, column limit, or CSV file size limit. Here are a few examples:
- Salesforce CSV import limits - The Salesforce import limit is 50,000 rows and 90 fields (columns). Salesforce also has a max CSV file size of 100 MB.
- Hubspot CSV import limits - The Hubspot import limit is 1,048,576 rows and 1000 columns. Hubspot also has a max CSV file size of 512 MB.
- Netsuite CSV import limits - The Netsuite import limit is 25,000 rows and/or 50 MB
Working with giant CSV files
While CSV files are very common and typically easy to work with, giant CSV files can be a bit more complicated. Here are a few considerations and tips:
Compressed CSV files (e.g. CSV.gz) - When working with large datasets, it's common to use compressed formats like CSV.gz to save space and enable more efficient file storage and transfer. Row Zero automatically unzips and opens CSV.gz files as if you're opening a regular CSV file. Excel and Google Sheets do not support CSV.gz files.
CSV files can be limited by your computer's resources: In addition to hitting row limits of spreadsheet applications, you may also be limited by your computer's memory and processing power. For example, desktop solutions like Excel or Python can ultimately be limited by your computer's resources. That's a big advantage of working with a cloud spreadsheet like Row Zero. Since Row Zero runs in the cloud, it isn't limited by your computer and can take advantage of much more powerful processing power in the cloud.
Splitting CSVs or streaming large files: It's fairly common to split a CSV file into multiple files to get under the row limits of your spreadsheet or the CSV import limits of the application you're working with. However, keep in mind that splitting big csv files into multiple smaller files can introduce data governance issues since you're just proliferating data to more places that can get out of sync, violate data deletion rules, or leak. Python has some built-in tools for reading CSV files in smaller chunks, including the pandas chunksize parameter. When processing large files, streaming can also be much more efficient by processing rows one at a time instead of trying to load the entire file into memory.
Troubleshooting why CSV won't open or import - While your spreadsheet program's limits may prevent your CSV file from opening correctly, there are a number of other potential reasons why a large CSV file won't open correctly. It's important to keep in mind that nothing inherently governs CSV files for correct structure or contents. You can label any text file as .csv so it's even possible that your file contains non-CSV content. Common CSV file errors include inconsistent or missing delimiters, missing or extra columns, uneven or missing quotation marks, embedded line breaks, improper line endings, leading/trailing spaces in fields, and special characters. The bigger the file, the more likely it is to contain one of these issues.
Consider using a database - For very large datasets (tens of gigabytes or billions of rows) consider using a database (e.g. Postgres) instead of a CSV. Keep in mind that you can connect your spreadsheet directly to your database to import subsets of your data to get under your spreadsheet's limits.
Alternative big CSV editors
While spreadsheets like Excel, Google Sheets, and Row Zero are most commonly used to open CSV files, alternative tools are sometimes used to work with big CSV files.
Text editors
Text editors are typically not used to open CSV files, but they can be used in a pinch, especially if you just need to quickly view a file or do a quick edit like find and replace or find and delete. CSV is a text file format, so CSV files will open fine in a text editor, with each row on a new line and columns separated by commas - hence the name comma separated values (CSV). Notepad++ is a free text editor you can use to open very large CSV files.
Python
You can use Python to read large CSV files and manipulate large datasets with Python commands. Jupyter Notebook is a free Python tool that is commonly used. Keep in mind that most Python tools run locally, so the max CSV file size with Python will be dependent on your computer's memory and processing power.
Import to database
If you want to work with a large CSV file that is bigger than your spreadsheet's limits, you can import your CSV directly to a database and then query a subset of the data to get under the spreadsheet's limits. You can export this subset as a CSV and open in your spreadsheet. If you're using Row Zero, you can connect your spreadsheet directy to your database and live import your data. You can export spreadsheet data directly to your database or data warehouse, which can be an easy way to get your CSV into your database. Excel and Google Sheets also have add-ins for connecting to a database.
BI tools
BI tools like Tableau can be used to view, analyze, and visualize CSV data. However, Tableau is not a data editing tool like a spreadsheet so you would not edit a big CSV with Tableau. While Tableau does not have any strict CSV data size limits, the maximum CSV file size you can work with will probably depend on your computer's RAM (memory) and processing power. Larger CSV files can cause Tableau to slow down and crash. Typically, if you want to work with big data in a BI tool like Tableau you would connect directly to a database rather than importing a file of data.
Alternative spreadsheets
- Apple Numbers is a spreadsheet by Apple. The Apple Numbers row limit is 1 million rows and 1,000 columns.
- Libre Office is a free, open-source Excel alternative. The Libre Office row limit is 1,048,576 rows and 1,024 columns.
- Rows is an alternative spreadsheet focused on interactivity and data connectors. Rows has a data limit of 100,000 rows and 404 columns.
Conclusion
While there is no CSV data limit, there are CSV file size limits for many applications that are commonly used to work with CSV files. Spreadsheets are the most popular CSV editors. Excel has a CSV row limit of 1,048,576 rows and Google Sheets has a similar CSV max row limit. Row Zero is a next-gen spreadsheet built for big data that will easily open CSV files more than one million rows on a free plan and can handle billion row datasets on Enterprise plans. In all spreadsheets, the ability to handle the data varies by the structure and format of the data as well as the calculations and transformations applied to it. If you want to work with a big CSV file in a spreadsheet, Row Zero is your best choice. You can try Row Zero for free at rowzero.io.