Your files never leave your device. All processing happens locally in your browser.
How do I convert an Excel spreadsheet to PDF online without uploading it?
Open Excel to PDF, then drop your .xlsx, .xlsm, .csv or .tsv files onto the page — or click to pick them. The tool reads each workbook in your browser and lists every worksheet with a checkbox, so you choose exactly which sheets to convert. It renders a crisp, selectable vector PDF (not a screenshot) that keeps merged cells, bold and italic text, font and fill colours, alignment, column widths and row heights, and it can repeat the header row on every page and stamp page numbers. Pick a page size (A4, Letter, Legal, A3 or A5), orientation and a fit mode, then click Convert — each file becomes its own PDF, or tick “Merge into one PDF” to combine several workbooks into a single document. Nothing is uploaded: the whole conversion runs on your device, so your spreadsheets never leave the tab.
Converts XLSX, XLSM, CSV and TSV to a selectable vector PDF in the browser — no upload, no Microsoft Office
Keeps merged cells, bold/italic, font and background colours, alignment, column widths and row heights
Choose which worksheets to convert; each becomes its own PDF or merge many workbooks into one
Page size (A4 / Letter / Legal / A3 / A5), auto or fixed orientation, fit-to-width or fit-on-one-page scaling
Repeat the header row across pages, add page numbers and sheet names, batch up to 20 files at 50 MB each
What is
Excel to PDF Converter
An Excel to PDF converter is a tool that turns a spreadsheet workbook (.xlsx, .xlsm, or a delimited .csv/.tsv) into a fixed-layout PDF document, so the data can be shared, printed or archived exactly as laid out without the recipient needing Excel. It reads the worksheet grid — cell values, merged ranges, fonts, colours, alignment and column/row sizes — and paints each sheet onto PDF pages, splitting wide or tall sheets across multiple pages and optionally repeating header rows. A good converter produces vector PDF, meaning the text stays sharp and selectable rather than a flattened image, and handles multi-sheet workbooks and batches. This tool parses .xlsx/.xlsm with the ExcelJS library and .csv/.tsv inline, then draws the PDF with pdf-lib entirely in the browser, so it needs no Office install, no cloud service and never uploads your data.
No. The workbook is parsed and the PDF is built entirely in your browser, so the file never leaves your device — there is no upload, server or account.
Nothing is uploaded. When you drop or pick a spreadsheet, the tool reads it locally with the browser’s File API, parses the sheets in memory with the ExcelJS library (or reads CSV/TSV inline) and draws the PDF on your device with pdf-lib. There is no server, API, database or tracking in the processing path, so financial models, salary sheets and client data stay on your machine; the tool works offline once cached, and closing the tab discards everything. The only optional network use anywhere on the site is consent-gated advertising, which never sees your files.
Yes. It preserves merged cells, bold and italic text, font and fill colours, alignment, wrapped text, column widths and row heights, and can repeat the header row on every page.
The converter reads each cell’s formatting from the workbook and reproduces it in the PDF: merged ranges are drawn as single spanning cells, bold and italic map to the matching Helvetica weights, font colours and cell background fills are painted, and horizontal and vertical alignment plus wrap-text are honoured. Column widths and row heights are carried over and scaled to fit the page, gridlines can be drawn or hidden, and frozen/header rows can repeat on every page with optional page numbers and the sheet name in the header. It renders the static cell values, so a formula shows its last calculated result rather than being recomputed. Charts, embedded images and conditional-formatting rules are not redrawn.
Yes. Add up to 20 files (50 MB each); each becomes its own PDF, or tick “Merge into one PDF” to combine every selected sheet into a single document.
The tool is built for batches: drop or pick up to 20 spreadsheets of up to 50 MB each and it parses them in parallel, showing every worksheet with a checkbox so you convert only the sheets you want. Convert them individually and download each PDF (or all at once), or enable “Merge into one PDF” and every selected sheet from every workbook is rendered in order into one combined PDF — useful for stitching monthly reports or a set of tabs into a single hand-off file. A progress bar tracks the batch and the output file size is shown for each result.
It converts .xlsx, .xlsm, .csv, .tsv and .txt. Legacy .xls and OpenDocument .ods are not supported — re-save them as .xlsx first.
Modern Excel workbooks (.xlsx and macro-enabled .xlsm, plus template .xltx/.xltm) and delimited text files (.csv, .tsv, .txt with auto-detected comma, tab, semicolon or pipe delimiters) convert directly. The old binary .xls (BIFF) format and OpenDocument .ods are not supported — open them in Excel or LibreOffice and Save As .xlsx first. Because the built-in PDF fonts cover the Latin/WinAnsi range, characters outside it such as emoji or some non-Latin scripts are substituted, and charts, pictures and live conditional formatting are not redrawn. The practical ceilings are 20 files per batch and 50 MB per file, bounded by your device’s memory.
Detailed Explanation
📖How It Works
Turning Spreadsheets into Shareable PDFs in Your Browser
Excel to PDF converts a spreadsheet workbook into a fixed-layout PDF that anyone can open, print or archive without Excel — all without uploading a single byte. Drop your .xlsx, .xlsm, .csv or .tsv files onto the page or click to pick them, and the tool reads each workbook in the browser and lists every worksheet with a checkbox so you convert only the tabs you need. It renders a selectable vector PDF rather than a screenshot, keeping merged cells, bold and italic text, font and background colours, alignment, column widths and row heights, and it can repeat the header row on every page and stamp page numbers. Convert each file to its own PDF, download them individually or all at once, or tick “Merge into one PDF” to combine every selected sheet into a single document.
Converts XLSX, XLSM, CSV and TSV to selectable vector PDF in the browser — no upload, no Microsoft Office
Per-worksheet checkboxes and an in-page table preview before converting
Keeps merged cells, bold/italic, font and fill colours, alignment, column widths and row heights
One PDF per file, or merge every selected sheet from every workbook into one combined PDF
📋Use Cases
Reports, Invoices and Read-Only Hand-Offs
The everyday job is handing a spreadsheet to someone who should not (or cannot) edit it: a monthly report for a manager, an invoice or quote for a client, a price list, a timesheet, or a data extract for an archive or audit. A PDF freezes the layout so rows and columns line up the same on every device and nothing shifts when the recipient lacks the right fonts or Excel version. Because the tool converts CSV and TSV too, it is also handy for turning a raw data export into a tidy, paginated table. Batch mode covers end-of-month runs — drop a folder of workbooks and get one PDF each — while merge mode stitches several tabs or workbooks into a single document to email or print. Choosing landscape and fit-to-width keeps wide financial models readable, and the repeated header row keeps long tables legible across page breaks.
Share read-only reports, invoices, quotes, price lists and timesheets as fixed-layout PDFs
Turn raw CSV/TSV exports into paginated, formatted tables
Batch a set of workbooks into one PDF each, or merge tabs into a single hand-off file
Landscape + fit-to-width and repeated headers keep wide, long sheets readable
🔧Technical Details
How the Conversion Works
Workbooks are parsed with the ExcelJS library: the tool dynamically imports ExcelJS, loads the .xlsx/.xlsm from an ArrayBuffer, and walks each sheet to capture cell values (using the cached result for formulas), fonts, colours, fills, alignment, wrap-text, merged ranges, column widths and row heights, and any frozen rows. CSV and TSV are parsed inline with an RFC 4180 reader that auto-detects the delimiter. Each sheet is then drawn with pdf-lib: the four standard Helvetica faces (regular, bold, italic, bold-italic) are embedded, Excel column-width units are converted to points, and cells are laid out page by page — text is wrapped or ellipsised to fit, merged cells are drawn as single spanning rectangles, backgrounds and gridlines are painted, and rows overflow onto new pages with the header row optionally repeated. Wide sheets are scaled with a fit-to-width or fit-on-one-page factor, orientation can be auto-chosen from the content width, and an optional footer stamps “Page x of n” and the sheet name. The finished bytes become an application/pdf Blob downloaded straight from the page.
ExcelJS parses .xlsx/.xlsm from an ArrayBuffer; CSV/TSV use an inline RFC 4180 reader with delimiter auto-detection
pdf-lib embeds the standard Helvetica faces and draws each sheet as vector text and shapes
Merged cells become spanning rectangles; text is wrapped or ellipsised; rows paginate with an optional repeated header
Fit-to-width / fit-on-one-page scaling, auto orientation, page numbers and sheet-name footer
⚙️Methodology
Layout Controls and Formatting Fidelity
The converter reproduces the parts of a spreadsheet that matter on paper. Merged ranges render as single cells, bold and italic map to matching Helvetica weights, font colours and solid cell fills are painted, and both horizontal and vertical alignment plus wrap-text are honoured; column widths and row heights are carried over and scaled to the chosen page. You control the output with a page size (A4, Letter, Legal, A3 or A5), an orientation of auto, portrait or landscape, and a fit mode of fit-to-width, fit-on-one-page or no scaling, plus toggles for gridlines, repeating the header row on every page, page numbers and putting the sheet name in the header. Because it renders static values, a cell shows its last calculated result rather than re-running the formula, which keeps the PDF faithful to what you last saw in Excel. Charts, embedded images and live conditional-formatting rules are outside the scope — the tool draws the data grid and its cell styling, not floating objects.
Merged cells, bold/italic, font and fill colours, H/V alignment, wrap-text, column widths and row heights preserved
Page size A4/Letter/Legal/A3/A5, auto/portrait/landscape, fit-to-width / fit-on-one-page / no scaling
Toggles for gridlines, repeated header row, page numbers and sheet name in the header
Static values are rendered (last formula result); charts, images and conditional formatting are not redrawn
⚠️Limitations
Honest Limitations
Everything runs in browser memory, so the practical ceilings are 20 files per batch and 50 MB per file, with very large sheets bounded by your device’s RAM. The old binary .xls (BIFF) format and OpenDocument .ods are not supported — open them in Excel or LibreOffice and Save As .xlsx first, and the tool says so with a clear message. The built-in PDF fonts cover the Latin/WinAnsi range, so characters outside it such as emoji or some non-Latin scripts are substituted with a placeholder rather than drawn. Formula cells show their last cached result because the tool does not recalculate; charts, sparklines, embedded pictures and dynamic conditional-formatting rules are not rendered, and only solid cell fills and basic borders are reproduced, not gradient fills or every border style. Column widths and row heights are approximated when converted to PDF points, so extremely wide sheets scaled to fit can end up with small text.
In-memory processing: up to 20 files and 50 MB each, bounded by device RAM
Legacy .xls (BIFF) and .ods are unsupported — re-save as .xlsx first
Non-WinAnsi characters (emoji, some scripts) are substituted; formulas show the last cached value
Charts, images and conditional formatting are not redrawn; widths/heights are approximated to points
🔒Privacy & Security
Privacy: Your Spreadsheets Never Leave the Tab
Spreadsheets are frequently the sensitive kind — salary and payroll sheets, financial models, customer lists, invoices, medical or research data — and this tool is built so none of it leaves your machine. Each workbook is read with the browser File API and parsed entirely in memory with ExcelJS (or an inline CSV/TSV reader), and the PDF is drawn locally with pdf-lib; there is no server, upload, database, logging, API or CDN anywhere in the processing path, and even the final PDF download is generated on your device. The tool works offline once the page has been cached, and closing the tab discards every byte. There is no login and no telemetry, and the only optional network use anywhere on the site is consent-gated advertising, which never sees your files.
Workbooks read and rendered to PDF entirely in the browser
No server, upload, database, API or CDN in the processing path
Even the final PDF is generated locally; works offline once cached
No login or telemetry; closing the tab discards everything
Excel to PDF — formats, options and limits
Capability
Support
Notes
Input formats
XLSX, XLSM, XLTX, XLTM, CSV, TSV, TXT
ExcelJS parses Excel workbooks; CSV/TSV use an inline RFC 4180 reader with delimiter auto-detection
Formatting kept
Merged cells, fonts, colours, alignment
Bold/italic, font and fill colours, H/V alignment, wrap-text, column widths and row heights
Page layout
A4/Letter/Legal/A3/A5, 3 fit modes
Auto/portrait/landscape, fit-to-width, fit-on-one-page or none; gridlines and repeated header optional
Multi-file
Batch and merge
Up to 20 files at 50 MB each; one PDF per file or merge every selected sheet into one
Vector PDF drawn with pdf-lib on-device; 100% client-side, no upload
Excel to PDF converts spreadsheets in the browser: ExcelJS parses .xlsx/.xlsm (CSV/TSV inline), and pdf-lib draws each selected sheet as a selectable vector PDF preserving merged cells, fonts, colours, alignment and cell sizes, with page-size, orientation, fit, gridline, repeated-header and page-number controls. Convert one PDF per file or merge many sheets into one, batching up to 20 files at 50 MB each. Charts, images and conditional formatting are out of scope, and legacy .xls/.ods must be re-saved as .xlsx. Everything runs on-device; nothing is uploaded.