PDF to ODS extracts text and tables from a text-based PDF into a valid ODS (OpenDocument Spreadsheet) file. Choose Table detection for real columns or Plain text for prose, pick a page range, decide whether to keep one sheet or split per page, then turn on auto-detected numbers, currency, percentage and date cells. Everything runs in your browser, so the PDF never leaves your device. The resulting .ods file opens in LibreOffice Calc, Apache OpenOffice, Google Sheets and Microsoft Excel.
What is a PDF to ODS converter?
A PDF to ODS converter is a tool that reads a PDF document and produces an OpenDocument Spreadsheet file — a real spreadsheet with rows, columns, typed cells and styles, not just a plain-text export. Instead of manually copying values from a PDF into LibreOffice Calc one cell at a time, you get the whole table in one click.
The tool reads each PDF page with pdf.js, walks through every text item with its x/y position, groups items by baseline into rows, then finds vertical gaps that repeat across many rows to rebuild column boundaries. The result is a table structure that gets written to a valid ODS file — a ZIP archive with content.xml, styles.xml, meta.xml and a manifest, following the OASIS standard.
How the PDF to ODS conversion works
The pipeline has three stages. First, pdf.js reads the text layer of each page and returns every text item with its font, size and position. Second, the tool groups items by baseline to form rows, then clusters the x-coordinates to find column boundaries. Third, the rows and columns are written into the ODS format with typed cells — floats, currency, percentages and dates — that a spreadsheet app recognises and formats natively.
Who should use this PDF to ODS tool?
Anyone who works with invoices, bank statements, financial reports, product catalogues, inventory sheets, survey results or any PDF with tabular data. If you use LibreOffice Calc as your daily spreadsheet app, ODS is the native format — no format conversion step, no compatibility warnings. If you use Google Sheets, upload the ODS to Google Drive and Sheets reads it natively.
Why convert PDF to ODS instead of typing the data?
PDF is a fixed-layout format — every character is at a precise position on the page, which is why a PDF looks identical everywhere. ODS is a data format — every value sits in a cell that you can sort, filter and total. Converting PDF to ODS moves data from a display format into a workable one, and it saves an enormous amount of manual effort for tables with more than a handful of rows.
Spreadsheet apps do things PDF cannot
Once the data is in ODS, you can sort by column, filter by value, compute sums and averages, draw charts, apply conditional formatting, and export to CSV or XLSX. None of that is possible on a PDF directly. The ODS file becomes a living asset you can update, extend and combine with other data.
LibreOffice Calc reads ODS natively
If your workflow already uses LibreOffice, an ODS file is the natural target. There is no conversion step, no format warning and no loss of fidelity. LibreOffice Calc opens ODS, preserves cell types, recognises headers and formulas, and saves back to ODS without touching the structure. Converting to XLSX and back would lose formatting and risk compatibility warnings.
Smaller, easier to share than PDF
An ODS file with the same tabular data as a PDF is usually much smaller, easier to search, and easier to version in a repository. A 50-page PDF invoice report with a summary table becomes a 200 KB ODS file that any accountant can open, sort and reconcile against their own records.
How to convert PDF to ODS in 5 steps
The conversion is short and needs no account. Follow these steps and the first ODS file will be ready in under a minute.
- Add your PDFDrag a text-based PDF onto the upload card, click Browse, or import directly from Google Drive or Dropbox. The tool loads the file inside your browser using pdf.js — nothing is uploaded to a server.
- Choose extraction modeTable detection groups text items by baseline and finds vertical gaps that repeat across rows to rebuild columns. Plain text mode puts every line in a single column and is best for prose and reports without real columns.
- Configure the sheet layoutPick the page range (all, first, or a specific page) and choose one sheet for the whole document or one sheet per page. Auto-detect numbers turns numeric strings into float, currency, percentage and date cells.
- Set the header optionsFirst row as header treats the top row of each sheet as a header. Freeze header keeps that row visible when you scroll in LibreOffice Calc or Excel. Merge column gaps falls back to plain text on pages with no clear columns.
- Extract and downloadClick Extract & Convert to ODS. Review the Table tab for a spreadsheet preview or the ODS XML tab for the raw content.xml, then download the .ods file and open it in LibreOffice Calc, OpenOffice, Google Sheets or Excel.
Testing with a single page first
Before converting the whole document, choose First page only and review the Table tab. Confirm that rows and columns look correct, then convert the whole PDF. This is faster than re-doing the extraction after discovering a wrong mode setting.
Reading the Table and ODS XML tabs
The Table tab shows the extracted data as a spreadsheet preview with headers, rows and empty cells highlighted. The ODS XML tab shows the raw content.xml that will be written into the file — you can inspect cell types, styles and sheet names before downloading.
Features of the PDF to ODS converter
The tool was built for accountants, analysts and anyone who lives in spreadsheets. Every option corresponds to a real workflow need.
Table detection and plain text modes
Table detection reads each text item with its x/y position and clusters x-coordinates to find columns. Plain text mode puts every line in a single column and is best for prose. Merge column gaps automatically falls back to plain text when a page has no clear columns.
Single sheet or one sheet per page
For a single table that spans multiple pages, choose Single sheet — every extracted row goes into one worksheet. For multi-section reports and annexes, choose One sheet per page — each PDF page becomes its own sheet named "Page 1", "Page 2" and so on.
Auto-detected cell types
Integer and decimal strings become float cells, strings with a currency symbol become currency cells, percentage strings become percentage cells, and ISO date strings become date cells. This means LibreOffice Calc and Excel will right-align numbers, format currency with the correct symbol and treat dates as real dates, not text.
Header row and freeze
First row as header applies a bold style to the top row of each sheet. Freeze header tells the ODS file to keep that row visible while you scroll in LibreOffice Calc and Excel. Together they make a spreadsheet that behaves like a well-designed table from the moment it opens.
What is ODS (OpenDocument Spreadsheet)?
ODS stands for OpenDocument Spreadsheet. It is an open, ISO-standardised format defined by OASIS as ISO/IEC 26300 and used as the native spreadsheet format by LibreOffice Calc and Apache OpenOffice.
ODS is a ZIP archive of XML files
An ODS file is a ZIP archive. Inside it, you find content.xml (the actual cell data and styles), styles.xml (the document-level styles and page layout), meta.xml (title, author and creation date), and META-INF/manifest.xml (a list of all files with their MIME types). The MIME type is application/vnd.oasis.opendocument.spreadsheet.
Who opens ODS files?
LibreOffice Calc, Apache OpenOffice Calc, Google Sheets, Microsoft Excel (with a format warning), WPS Office, Zoho Sheet and many web-based spreadsheet apps. This tool's output uses the standard ODF 1.2 features that all of them understand: typed cells, styles, headers and sheet names.
ODS vs XLSX
ODS is the open standard; XLSX is Microsoft's format. Both are XML-based ZIP archives and both open in modern spreadsheet apps. If your team uses LibreOffice, choose ODS — it is the native format and preserves everything without conversion. If your team uses Excel or Google Sheets, either works. For a detailed comparison, see the OpenDocument Wikipedia page.
Table detection vs plain text mode
The two extraction strategies produce very different sheets. Pick the one that matches your document.
Table detection (columns)
Best for invoices, bank statements, reports and anything with real columns. The tool groups items by baseline to form rows, then counts how many items align to each x-position. Rows that share a vertical gap become column boundaries, and each cell gets its correct column. Cells that span multiple columns or contain mixed content may not align perfectly, so review the Table tab first.
Plain text (one column)
Best for prose, articles, contracts and forms without real columns. Every line becomes one cell in column A. Simple, reliable and never fails to extract text. Use this when Table detection produces messy output, then split the content into columns manually in LibreOffice Calc.
When to merge column gaps
Some pages within an otherwise tabular PDF have no clear columns — a cover page, an introduction, a signature block. With Merge column gaps on, those pages fall back to plain text mode automatically so the sheet stays consistent. Turn it off if you want the raw column output even when it is unreliable.
Honest limit: column detection is a heuristic, not a full table parser. Complex layouts, merged cells and multi-column magazines can still come out jumbled. If the preview looks wrong, switch to Plain text mode or try a single page to compare.
Auto-detecting numbers, currency, percentages and dates
PDF text is just text — LibreOffice Calc cannot tell the difference between the string "1,234" and the number 1,234 unless the file explicitly marks the cell as a number. This tool does that automatically.
Integer and decimal cells
Strings that match ^-?\d+$ (integers) or ^-?\d*\.\d+$ (decimals) become ODS float cells with office:value-type="float". LibreOffice Calc right-aligns them by default and treats them as numbers for sums, averages and sorting.
Currency cells
Strings that start with a currency symbol (dollar, euro, pound, rupee) and end with a number become ODS currency cells with office:value-type="currency" and office:currency. LibreOffice Calc displays them with the correct symbol and treats them as monetary amounts.
Percentage cells
Strings ending with % become ODS percentage cells. The tool stores the numeric value as a fraction (so "50%" becomes 0.5), which is what LibreOffice Calc expects for a percent-formatted cell.
Date cells
ISO date strings in YYYY-MM-DD format become ODS date cells with office:value-type="date". LibreOffice Calc treats them as dates and lets you change the display format, add or subtract days, and filter by month or year.
Text-based vs scanned PDFs
This is the most important thing to understand about PDF to ODS conversion. PDFs come in two broad types, and only one of them works here.
Text-based PDFs
Created by Word, Google Docs, LaTeX, online invoices and most digital reports. They contain a real text layer that can be selected, copied and extracted. These convert perfectly, including column detection and cell type inference.
Scanned PDFs
Created by a scanner or a phone camera. Each page is a picture with no text layer. Selecting text does nothing. These need OCR before they can be extracted to a spreadsheet.
Quick test
Open the PDF and try to select a sentence with your mouse. If the text highlights, it has a text layer and this tool will read it. If nothing highlights, it is scanned and will need OCR first.
Your PDF stays private
Everything happens in your browser. The PDF is loaded with pdf.js, the text is extracted page by page, and the ODS archive is built in JavaScript with JSZip. Nothing is uploaded, logged or stored. When you close the tab, the file is gone from memory.
Local processing
Text extraction and ODS assembly both run on your device, so confidential documents never leave your computer or phone.
Direct cloud downloads
When you import from Google Drive or Dropbox, your browser fetches the file straight from that provider after you grant access.
No account needed
You can convert without signing in. Read our privacy policy for details about the site itself.
Tips for better ODS output
- Try Table detection first. It is the best choice for invoices, statements and reports. Switch to Plain text only if the result is messy.
- Preview one page before converting all. Use the First page only option to confirm the extraction looks right.
- Turn off Auto-detect numbers if your PDF contains codes that look like numbers (ZIP codes, phone numbers, IDs). Otherwise they get formatted as numeric values that lose leading zeros.
- Use One sheet per page for multi-section reports. Each page keeps its own header row and stays easier to navigate.
- Keep Freeze header on. It makes LibreOffice Calc keep the header row visible while scrolling.
- Compress the source PDF first. Smaller PDFs extract faster. Run them through our Compress PDF tool.
Common problems and quick fixes
| Problem | Likely cause | Fix |
|---|---|---|
| Sheets are empty | The PDF is scanned or image-only | Run it through an OCR tool first, or test by selecting text in a viewer. |
| One tiny column per word | Table detection on prose | Switch Mode to Plain text. |
| Columns merged into one | Columns are too close for the gap heuristic | Turn off Merge column gaps, or use Plain text and split manually. |
| Numbers show as text | Auto-detect numbers is off | Turn it on and reconvert. |
| Leading zeros disappear | Auto-detected as a number | Turn off Auto-detect numbers, or prefix values with an apostrophe in LibreOffice Calc. |
| ODS opens as corrupt | Browser blocked the download, or the file was truncated | Retry the conversion and download again. Try a different browser if it persists. |
| Cloud import fails | The sign-in window was blocked | Allow pop-ups for this site, then press the Drive or Dropbox button again. |
Related PDF tools for spreadsheets
These tools complement the PDF to ODS converter and are all free.
Frequently asked questions
Is the PDF to ODS converter free?
Does the tool upload my PDF to a server?
Can I import PDFs from Google Drive or Dropbox?
What is ODS?
What is the difference between Table detection and Plain text mode?
What does Auto-detect numbers do?
What does First row as header do?
What does Merge column gaps do?
Can I split sheets per PDF page?
What kind of PDFs work with this tool?
Does it support OCR for scanned PDFs?
How do I open the ODS file?
Does it work on iPhone and Android?
Why are the sheets empty?
Can I use the ODS file in Google Sheets?
Ready to extract your ODS?
Load a text-based PDF, pick a mode, and download a spreadsheet-ready ODS file in seconds. Free, private and built for every device.
Convert PDF to ODS