Skip to content
PDFConvertFast

Excel to XML Converter

Convert an Excel sheet into XML for an import, an interface or a feed. The header row becomes the element names, every row becomes a <row> element.

Your files stay on your device. Conversions run in your browser.

Your files stay on your device. Conversions run in your browser.

  • No signup required
  • Files stay on your device
  • Browser-based conversion
  • Fast download
  • Free to use

How it works

How to convert Excel to XML online

  1. 1

    Choose an XLSX or XLS file whose first row contains the column names.

  2. 2

    Click “Convert to XML”.

  3. 3

    Download the UTF-8 XML file with all sheets.

Supported file types: XLSX, XLS · No signup required

What the XML looks like

Every sheet becomes a <sheet name="…"> element, and every row below the header becomes a <row>. Inside each row, the column headers are the element names: a column “Customer” turns into <Customer>Anna</Customer>. Spaces and characters that XML doesn't allow in names are replaced with underscores, empty headers get names like column3, and duplicate headers get a number added.

Values and special characters

Many import interfaces expect their own fixed element names. Rename the column headers in Excel to match before converting, and you get the structure you need.

  • Characters such as & and < are escaped, so the XML is always valid.
  • Dates are written as 2026-01-15 – exactly as in Excel, not shifted by your time zone.
  • Formulas are written as their current result.
  • Empty cells become empty elements like <City/>.

About Excel and XML files

Excel (XLSX and XLS)
XLSX is the modern Excel spreadsheet format (Excel 2007 and newer); XLS is the older format. Both store data in rows, columns and sheets, and open in Excel, Google Sheets, LibreOffice and Numbers. All Excel tools →
XML
XML stores data in nested, named elements. It is used for data exchange between systems, for exports from business software and for many feeds.

Privacy: your files stay on your device

Your files stay on your device. Conversions run in your browser. PDFConvertFast never uploads, stores or reads your documents – there is no server that receives them, no account and no email address.

  • Your files stay on your device
  • No signup required
  • Browser-based conversion
Read the privacy policy →

Excel to XML – frequently asked questions

How do I convert an Excel spreadsheet to XML?

Make sure the first row of each sheet contains column names, choose the XLSX or XLS file and click “Convert to XML”. You get one UTF-8 .xml file with the same name as your workbook. Every row below the header becomes a <row> element.

What structure does the Excel to XML output have?

It is always <workbook>, then one <sheet name="…"> per sheet, then one <row> per data row. Inside each row, every column is an element named after its header, for example <Customer>Anna</Customer>. The file starts with an XML declaration for UTF-8.

Can I change the root or row element names in the XML?

No. The root is always <workbook>, each sheet is <sheet> and each record is <row>. Only the column element names can be controlled, by renaming the headers in Excel. If an import expects other names, rename those tags in a text editor afterwards.

How are column headers turned into XML element names?

Spaces and characters not allowed in XML names become underscores, so “Unit price (€)” becomes Unit_price. Names that start with a digit or with “xml” get a leading underscore, empty headers are named after their position, like column3, and duplicates get a number such as Name_2. Letters from any script, like “Größe”, are kept.

Can the XML use attributes instead of child elements?

No. Every cell value is written as a child element of <row>; the only attribute in the file is the sheet name on <sheet>. If you need attributes, adjust the file afterwards.

What happens to a workbook with several sheets?

All sheets with data go into one XML file, each in its own <sheet> element with the sheet name as an attribute. Empty sheets are skipped. Each sheet uses its own first row for the element names.

How are dates, numbers, empty cells and special characters written in the XML?

Dates become 2026-01-15 (with T14:30:00 if there is a time), exactly as in Excel. Numbers are written as plain values, so 25% becomes 0.25, and formulas as their current result. Empty cells become empty elements like <City/>, and & or < are escaped so the XML stays valid.

What if my sheet has no header row?

The first row is always used for the element names, so your first data row would become tag names instead of a record. Insert a row with column names at the top before converting. Columns without a header get names like column4.

Is there a file size limit for converting Excel to XML?

Workbooks up to 50 MB are supported as XLSX, XLS or XLSM – free and without an account. Password-protected files cannot be read; remove the password in Excel first. For JSON output instead of XML, use Excel to JSON.

Is my spreadsheet uploaded when I create XML from it?

No. The XML is generated in your browser from the workbook on your device, so data for an import or interface never passes through a server. Nothing is stored.

XML to Excel

Open XML data as an Excel table.

Convert now

Excel to JSON

Turn spreadsheet rows into JSON for apps and APIs.

Convert now

Excel to CSV

Export XLSX or XLS sheets to simple CSV files for any app.

Convert now

More converters

View all converters →