Convert one or more PDF files to XLS files online using this tool for free.
or drop your PDF files here
Conversion Settings
Specifies the first page of the PDF to convert. Leave blank to start from the first page.
Specifies the first page of the PDF to convert. Leave blank to start from the first page.
Specifies the last page of the PDF to convert. Leave blank to include all pages until the end.
Specifies the last page of the PDF to convert. Leave blank to include all pages until the end.
auto
Controls how tables are detected in the PDF. 'Lattice' works best when tables have visible borders; 'Stream' works better for whitespace-separated tables.
Controls how tables are detected in the PDF. 'Lattice' works best when tables have visible borders; 'Stream' works better for whitespace-separated tables.
Merge Multi-line Cells
Yes
If enabled, merges text spanning multiple lines in the same table cell into a single cell.
If enabled, merges text spanning multiple lines in the same table cell into a single cell.
Detect Header Rows
Yes
Attempts to detect and preserve header rows separately from data rows.
Attempts to detect and preserve header rows separately from data rows.
Preserve Text Formatting
No
Keeps original font style, size, and formatting in the extracted spreadsheet cells.
Keeps original font style, size, and formatting in the extracted spreadsheet cells.
Remove Empty Rows
Yes
Removes rows with no data to produce a cleaner output spreadsheet.
Removes rows with no data to produce a cleaner output spreadsheet.
Converted Files
Disclaimer:Please be aware that due to limited server storage, converted files will be automatically purged over time for optimal server performance.
How to use this PDF to XLS Converter?
Choose files or drop them into the input area.
Adjust the conversion settings and click Convert.
Download the converted files when processing finishes.
{
"convert": "pdf-xls",
"multiple": true,
"from": "pdf",
"to": "xls",
"controls": [
{
"type": "number",
"name": "from_page",
"label": "From Page",
"optional": true,
"range": {
"min": 1,
"max": 10000
},
"desc": "Specifies the first page of the PDF to convert. Leave blank to start from the first page."
},
{
"type": "number",
"name": "to_page",
"label": "To Page",
"optional": true,
"range": {
"min": 1,
"max": 10000
},
"desc": "Specifies the last page of the PDF to convert. Leave blank to include all pages until the end."
},
{
"type": "dropdown",
"name": "table_detection_mode",
"label": "Table Detection Mode",
"options": [
{
"label": "Automatic (best guess)",
"value": "auto"
},
{
"label": "Stream (for plain text PDFs)",
"value": "stream"
},
{
"label": "Lattice (for PDFs with clear table borders)",
"value": "lattice"
}
],
"defaultValue": "auto",
"desc": "Controls how tables are detected in the PDF. 'Lattice' works best when tables have visible borders; 'Stream' works better for whitespace-separated tables."
},
{
"type": "checkbox",
"name": "merge_multiline_cells",
"label": "Merge Multi-line Cells",
"defaultValue": true,
"desc": "If enabled, merges text spanning multiple lines in the same table cell into a single cell."
},
{
"type": "checkbox",
"name": "detect_headers",
"label": "Detect Header Rows",
"defaultValue": true,
"desc": "Attempts to detect and preserve header rows separately from data rows."
},
{
"type": "checkbox",
"name": "preserve_text_formatting",
"label": "Preserve Text Formatting",
"defaultValue": false,
"desc": "Keeps original font style, size, and formatting in the extracted spreadsheet cells."
},
{
"type": "checkbox",
"name": "remove_empty_rows",
"label": "Remove Empty Rows",
"defaultValue": true,
"desc": "Removes rows with no data to produce a cleaner output spreadsheet."
}
],
"note": "Converting a PDF to XLS involves extracting structured table data from a fixed-layout document. Accuracy depends heavily on how the original PDF was created — PDFs generated directly from spreadsheets usually convert well, while scanned or image-based PDFs require OCR before tables can be detected. Merged cells, complex formatting, and irregular tables may require manual cleanup after conversion.",
"type": "document",
"operation": "convert"
}