Written by Jennifer Walsh. Reviewed for technical accuracy by Shubham Dixit, Independent Expert in Email Forensics and Data File Conversion.
Shubham is an independent external reviewer and not an employee of PCDOTS.
Quick answer. Converting EML to Excel turns a pile of message files into a table, one row per email, with the sender, recipient, subject, date and body text in columns. A few lines of PowerShell will do it free, and a converter handles a whole folder at once, exporting CSV that Excel opens directly.
On this page
What a spreadsheet of email looks like?
An EML file holds one email, headers and body together in a single file. A spreadsheet holds rows and columns. So the conversion is really a flattening job, each email becomes one row, and the parts of that email become the columns, the sender in one, the recipient in the next, then the subject, the date, and the body text.
Once a folder of EML files is arranged that way, everything a spreadsheet is good at becomes available. You can sort by date, filter to one sender, count messages by month, pivot the lot into a summary, or hand the file to a CRM or a reporting tool that only accepts tabular input. That is the real reason to do this, not to read the emails, but to analyse them.
A folder of EML files becomes a table you can sort, filter and pivot.
What lands in the sheet, and what does not?
This is the part worth settling before you start, because it is where expectations usually go wrong. A spreadsheet is a grid of text and numbers, so it takes the parts of an email that fit that shape and leaves the rest behind.
What comes across cleanly is the header detail, the from and to addresses, the subject, the date and time, and usually the plain body text. What does not come across is anything a grid cannot hold. Attachments stay behind, since a cell cannot contain a file. Formatting and inline images are lost, because the body arrives as plain text. And a spreadsheet cell tops out around thirty two thousand characters, so a very long email body can end up truncated or awkward to read. None of that is a fault in the conversion, it is simply what a spreadsheet is for. If you need the emails themselves intact, convert them to a format built for mail rather than to a grid.
Excel is for analysing emails, not for keeping them whole.
Convert EML to Excel free with PowerShell
You will often be told the only free way is to open each EML in Notepad and copy the fields into Excel by hand. For one file that is fine. For a folder it is not a method, it is a punishment, and it invites typing mistakes into data you are about to report on.
The real free route is already on your machine. PowerShell ships with Windows and can walk a folder of EML files, read the header lines from each one, and write the whole lot out to a CSV that Excel opens directly. You point it at the folder, pull the From, To, Subject and Date lines, and export. It costs nothing, it runs offline, and it scales to as many files as you have.
Python does the same job if you prefer it, using the built in email module to parse each message properly and the csv module to write the table. It handles the fiddly parts of the format more gracefully, which matters once your files come from mixed sources.
“If you script this yourself, the part that catches people is that email headers are not simply plain text. Subject lines carrying accents or non Latin alphabets are encoded, and long headers wrap across lines, so a naive read pulls in something garbled or cut short. Parse the message with a proper email library rather than reading lines raw, and the columns come out clean. On a small English only folder you may never notice, but on real mixed correspondence it shows up quickly.” Shubham Dixit, Data File reviewer (draft, pending approval)
Why the answer is usually CSV?
One thing worth being straight about. Most tools and scripts that promise EML to Excel actually produce a CSV file, not a native .xlsx workbook, and that is normal rather than a shortcoming. CSV is the plain text table format that every spreadsheet application reads, so Excel opens it directly, as do Google Sheets, LibreOffice and any database or CRM you might feed it into.
If you specifically need a real Excel workbook, with formatting, formulas or multiple sheets, open the CSV in Excel and use Save as to store it as .xlsx. That takes a few seconds and gives you the workbook. So when you see a converter advertising XLS and XLSX output, read it as the file landing in Excel, which for almost every purpose is the same thing.
Convert a folder of EML files in bulk
Scripting is ideal if you are comfortable in a terminal. When you would rather not be, or when the folder is large and you want a preview of the mail before you commit, a desktop converter does the same job through an interface. The PCDOTS EML Converter loads a folder of EML files, shows you the messages first, and exports them to a CSV table in one run on your own PC with nothing uploaded. Its genuine strength here is scale and convenience, hundreds of files in a single pass without writing a line of code. There is a free version to try on your own files first.
The bulk route, for a folder of EML files in a single run.
Here are the steps with the screens.
Step 1. Install and run the converter on your Windows PC, then click the Open menu.

Step 2. Go to Email Data Files, choose EML Files, and browse to your files or a whole folder.

Step 3. Preview the loaded mail, then click Export and select CSV.

Step 4. Choose a destination and click Save, then open the file in Excel.

If you only want to read the messages rather than tabulate them, a free EML file viewer opens them on its own. There are also guides to convert EML files to CSV for more on the table format itself, and to extract email addresses from EML files when the addresses are all you actually need.
The methods compared
Match the route to how many files you have and how you like to work.
| Method | Best for | Good to know |
|---|---|---|
| Copy from a text editor | A single email | Fine once, hopeless for a folder |
| PowerShell or Python | Any number, free | Parse properly for odd characters |
| EML converter | A big folder, no code | Previews mail, exports CSV |
Frequently asked questions
How do I convert an EML file to Excel?
Read the EML files and write their details out as a table. A few lines of PowerShell will do a whole folder free, or a converter loads the folder and exports a CSV that Excel opens directly, with one row per email.
Can I convert EML to Excel for free?
Yes. PowerShell comes with Windows and can parse a folder of EML files into a CSV at no cost, and Python does the same. Copying fields by hand from a text editor also works, but only sensibly for a single message.
Do I get an XLSX file or a CSV?
Usually a CSV, which Excel opens straight away. If you need a real workbook, open the CSV in Excel and use Save as to store it as .xlsx.
Do attachments come across into Excel?
No. A spreadsheet cell cannot hold a file, so attachments stay behind, along with formatting and inline images. The sheet gets the header details and the plain body text.
Why is my email body cut off in the cell?
A spreadsheet cell holds about thirty two thousand characters, so a very long message gets truncated. If you need full bodies, keep the emails in a mail format and use the sheet only for the details.
Can I convert many EML files at once?
Yes. That is the point of both the script and the converter. Each one walks the whole folder and writes a single table with one row per email, rather than making you repeat anything.
A spreadsheet of your email
The useful way to think about this conversion is that you are not moving your email, you are building an index of it. Each message turns into a row, the details become columns, and suddenly a folder you could only scroll through becomes something you can sort, filter, count and report on. PowerShell will build that table for free on any Windows machine, and a converter will do it for a large folder without any code at all. Keep the original EML files wherever they live, since the spreadsheet is a summary rather than a replacement, and you get the analysis without giving anything up.