Skip to Content
RowSlice

Guide

CSV File Size Limit: Excel, Sheets, Email, USB and Imports

Published · Updated

The CSV format itself has no size limit. RFC 4180, the closest thing CSV has to a specification, says nothing about maximum file size, number of rows or length of a value. A CSV is plain text, and a text file can be as large as the disk that holds it.

So when a CSV is “too big”, something else has a limit: the spreadsheet you open it in, the email service you send it with, the drive you copy it to, or the system you import it into. Those limits are real, they vary a great deal, and most of them are published. Here they are, taken from each vendor’s own documentation, with a link to the page each one comes from. We checked every linked figure on 10 October 2026. This guide is about size; the maximum rows and columns of common programs and importers are on a page of their own. To find out how big a file is in rows and columns without opening it in a spreadsheet, use RowSlice’s CSV Analyzer; to bring a file under a limit, split the CSV into smaller files.

Spreadsheets

ProgramLimitWhat happens over itSource
Excel (.xlsx)1,048,576 rows and 16,384 columns per sheet; 32,767 characters in a cellLoads the rows that fit and warns that the data set is too large for the gridMicrosoft
Excel 97–2003 (.xls)65,536 rows and 256 columns per sheetSame, at a much lower numberMicrosoft
Excel Data Model1,999,999,997 rows per tableWorks well beyond the sheet limit, but the rows cannot be scrolled or edited in a gridMicrosoft
Google Sheets20 million cells or 100 MB per spreadsheet created in or converted to Sheets“This file is too large to import directly into Google Sheets”Google, announcement, message

Two details matter. Excel’s limit is on rows, so a 2 GB file of short rows fails where a 2 GB file of long rows might not. Google’s limit is on cells, so the number of rows you can have depends on the number of columns: at 20 columns, 20 million cells is 1,000,000 rows, header included. Sheets has a second limit as well: 100 MB for a spreadsheet created in or converted to Sheets, which a file with long values can hit before it reaches 20 million cells. Google’s help page gave both figures when we read it on 10 October 2026. The cell limit was 10 million until Google doubled it in a rollout that began on 10 September 2026, so older answers still give that figure.

We checked the Excel behaviour with a 2.5-million-row CSV: Excel 2021 loaded exactly 1,048,576 rows, and Excel’s row limit explains what happens to the rest. We also found a less obvious limit. A value longer than 32,767 characters did not produce an error: the rest of it spilled into a new row, shifting every column after it. Why a CSV won’t open in Excel shows the details.

Email and File Transfer

ServiceLimitSource
Gmail, personal account25 MB of attachments; larger files are sent as a Google Drive link insteadGoogle
Outlook.com25 MB per attachmentMicrosoft
Microsoft 365 (Exchange Online) mailboxes35 MB per message by default; administrators can set up to 150 MBMicrosoft
Google Drive5 TB per fileGoogle

For email, zip the file first: in our test a 99.4 MB CSV compressed to 25.4 MB, which is still just over Gmail’s limit, so a file that size also needs splitting. The CSV splitter’s maximum-size mode keeps each part under the size you set. Reducing a CSV’s size compares the other options.

Disks and USB Drives

A drive formatted as FAT32, still common on USB sticks, cannot store a file of 4 GiB or more; Microsoft’s comparison of file systems lists the maximum file size as 4 GiB for FAT32 and 264−1 bytes for NTFS and exFAT. Apple documents a 263-byte maximum for APFS. In practice, only FAT32 gets in the way. Apple’s Disk Utility guide recommends exFAT for Windows-compatible drives over 32 GB, and reformatting erases the drive, so for a one-off copy, zip the file or split it into parts under 4 GB instead.

Import Tools

Systems that import CSVs publish their own limits, in rows, in megabytes or both. A few current size limits:

ToolPublished limitSource
Shopify product import15 MB per CSVShopify
HubSpot512 MB per file on paid plans; 20 MB on free toolsHubSpot
MailchimpFiles over 200 MB, or about one million contacts, “may cause import errors”Mailchimp
Google BigQuery4 GB per compressed CSV; 5 TB uncompressedGoogle Cloud

Splitting a CSV to fit an import limit covers more tools and how to work out the right part size, including the daily allowances some of them add on top.

Memory: The Limit Nobody Prints

Many programs read the whole file into memory before showing any of it, so the limit is your computer’s RAM rather than a published number. Excel is one: Microsoft’s guide to Excel’s resource errors notes that “in any 32-bit application, there’s a 2-GB limitation,” while “the 64-bit version allows all available physical RAM on the machine to be used.” (On 64-bit Windows, a later change doubled 32-bit Excel’s allowance to 4 GB.) pandas is another; its guide to scaling to large datasets says it “provides data structures for in-memory analytics, which makes using pandas to analyze datasets that are larger than memory somewhat tricky,” and read_csv offers a chunksize option to read a file in pieces.

Tools that stream the file, reading a piece at a time, avoid this limit. DuckDB queries a CSV on disk without loading it first. RowSlice’s tools read the file in chunks in your browser and write their output to disk as they go, so when you split, merge or convert a file, memory use stays about the same however large it is; the limits are free disk space and the storage your browser allows a site, about 10 GB in Firefox. Removing duplicates is the exception: it keeps a small fingerprint of every different row in memory, and stops with an error past about 33 million different rows.

What to Do When a File Is Over a Limit

  1. Measure it: the size in megabytes, and the number of rows, which is not the same as the number of lines — counting the rows in a CSV explains why. RowSlice’s CSV Analyzer reports the size, the data rows and the columns in one pass.
  2. Make it smaller if it can stay whole: remove columns the destination does not need, or zip it for email and storage.
  3. Split it if it cannot: RowSlice can split a large CSV file into multiple files by rows, by maximum size or into a set number of files, with the header in every part.
  4. Test before the real run: a sample CSV file generated at the same size shows whether an import or a script copes, without risking real data.

FAQ

Frequently Asked Questions

What is the maximum size of a CSV file?

The format has none. RFC 4180, the document that describes CSV, sets no limit on file size, row count or the length of a value. A CSV can be as large as the disk it is stored on allows. Every limit you run into belongs to a program: the spreadsheet that opens the file, the email service that carries it, or the tool that imports it.

Can Excel open a 2 GB CSV file?

Size in bytes is not what decides it. The questions are whether the file has more than 1,048,576 rows, which Excel cuts off, and whether Excel has the memory to hold it. Microsoft notes that 32-bit Excel gets 2 GB of memory, or 4 GB on 64-bit Windows, while the 64-bit version can use all the RAM in the computer. A 2 GB file usually has far too many rows for a sheet anyway; the Data Model, which holds up to 1,999,999,997 rows per table, is the Excel route for files that size.

Why can’t I copy a large CSV to my USB drive?

The drive is probably formatted as FAT32, which cannot store a file of 4 GiB or more, however much free space it has. Drives formatted as exFAT or NTFS do not have that limit. Reformatting erases the drive, so the quicker fixes are to zip the CSV, which often shrinks it to a quarter of its size, or to split the CSV into smaller files of under 4 GB each.

How big a CSV can Google Sheets import?

Google limits a spreadsheet to 20 million cells, counted as rows multiplied by columns across every tab, with the header row counted as a row: at 20 columns that is 1,000,000 rows. Google also caps a spreadsheet created in or converted to Sheets at 100 MB, so a file with long values can fail before it reaches 20 million cells. When a file is too big you may see “This file is too large to import directly into Google Sheets”, and Google’s help points to Connected Sheets, which uses BigQuery. When a CSV is too large for Google Sheets covers the options.

How can I test whether a program copes with a large CSV?

Give it a test file before the real one. RowSlice’s sample CSV file generator makes realistic files of up to 100 million rows or 20 GB, including a preset of 1,048,577 rows, just past what an Excel sheet holds, and can add awkward values such as commas, quotes and line breaks inside fields. Nothing is uploaded; the file is built on your computer.

Guides

See All 20 CSV Guides