Why Excel Sucks and Modern CSV is Awesome (at least for CSVs)

Using Excel for CSVs is like using Word for developing code. You could do it if you like suffering and mostly program in Malbolge, but for everyone else, it’s just the wrong tool for the job. Let’s first cover the main functionality Excel has that Modern CSV does not:

  • Figure plotting
  • Formulas
  • Macros
  • Pivot Tables
  • Individual cell formatting (font, color, etc.)
  • Embedding pictures, videos, etc.

As a general spreadsheet tool, Excel is great when you need these things, but it’s a poor tool for dealing with CSV files. Here are the main complaints people have about it:

  • Automatically formats data in undesirable ways
  • Slow loading for large files
  • Limits you to 1,048,576 rows and 16,384 columns
  • Locks files so they can’t be edited externally

Modern CSV was designed to address all of these problems plus a few most people probably didn’t even think to complain about. Let’s go through these one by one.

Excel’s limitations

Excel automatically formats data in undesirable ways

Suppose you have a list of addresses and there’s a column for zip codes. Some zip codes start with 0, so Excel will “helpfully” remove these leading 0s for you:

OK, sorry about the bad fake data, but if you happen to live in a zip code that starts with 0, Excel can’t find you …

but Modern CSV can! Then, there’s my personal favorite- turning numbers in the 40,000 range into dates. Modern CSV does not do that (although it does have a Convert Date/Time Format command, but you have to actually tell it to do that. No assuming what your data really is).

Excel limits you to 1,048,576 rows and 16,384 columns

Most CSV files are shorter than a million rows, but some are much longer if they’re auto-generated by software or hardware. If you need to see the whole thing, Excel isn’t the tool for you because you will see this:

And when you scroll to the bottom of the file, you will see this:

This is not the end of the file. This is only the end of what Excel can show you.

With Modern CSV, you see this:

This is the end of the file.

Excel is slow loading for large files

The portion of the file it can load Excel loads slowly. Here’s a video of Excel loading the same file from above.

I had to snip out the middle so you don’t click away out of boredom. So it takes over 45 seconds to load less than 1/4 of the file. Here’s Modern CSV opening the same file in read-only mode:

That took 7.5 seconds and it loaded the whole file. In edit mode, it takes 28 seconds to load the whole file (rather than just 25% of the file).

Excel locks files so they can’t be edited externally

What if you’re running a script that writes to a CSV file and you want to see it updated? With Excel, you can’t even run the script because it’ll lock the file. With Modern CSV, you can see the changes happen in real time.

Access denied by Excel.
Your scripts run smoothly with Modern CSV. Plus, you can see changes in real time.

Additional Advantages of Modern CSV

There’s a lot more to Modern CSV than compensating for the above deficiencies. Here are just a few advantages:

Improved editing features

Suppose you want to move a column. Just select any cell in that column and hit ctrl+alt+left/right. That’s it. Done. It also works on several columns at once or rows with ctrl+alt+up/down.

Deleting rows (ctrl+shift+k) and columns (ctrl+shift+l) is just as easy:

Plus, you can insert and duplicate rows and columns (insertion: alt+r and alt+c, duplication: ctrl+alt+r and ctrl+alt+c).

You can edit several cells at the same time:

And with series too:

Multiple file support

If you have folders full of CSVs that you want to work with, Excel will open up a new instance per file. Modern CSV, on the other hand, can handle multiple CSVs in the same instance with the use of the Tab bar and the Sidebar. Just drag and drop a folder into Modern CSV and it will automatically add the CSV, TSV, TAB, etc. files to the sidebar.

There’s also a nifty Go to File feature where you can hit ctrl+p and type in the name of any file in the folder. It uses fuzzy search, so just a partial name will do.

Keyboard shortcuts

Modern CSV is a great tool for keyboard ninjas. Many commands have a default keyboard shortcut and almost all of them can have a shortcut if you want. Furthermore, if you don’t like the default shortcuts, you can change them. Just use the Edit Keyboard Shortcuts command and edit the file. For instance, if you use the Join Selected Cells Horizontally command a lot, which doesn’t have a shortbut by default, and want to assign ctrl+j to it, it’s super easy:

These are just a few of the advantages Modern CSV has over Excel for handling CSV files. See for yourself. Download it here for Windows, Mac, or Linux. You can use the free version forever if you like. There’s also a Premium version extra features, including:

  • Filter rows and columns
  • Hide rows and columns
  • Duplicate, rename, and delete files within the program
  • Join and split cells, rows, and columns
  • Various advanced editing tools

You can upgrade here.



I’m not a virologist or medical researcher, so there’s not much I can do to help in that respect. I have noticed some Modern CSV users are data scientists and there is a lot of data science going on with tracking the spread of COVID-19, so I’m giving away free personal licenses to anyone who wants to use Modern CSV for that purpose. Just go to the contact page and request one while briefly describing what you plan to do with it.

By the way, the raw data behind the Johns Hopkins coronavirus interactive map can be found here.

Stay safe out there.