- Home
- Resources
- Integrations
- Extract from File
n8n Extract from File nodeConfigure Extract from File in n8n.
A spreadsheet or a PDF lands in your workflow as binary data, and nothing downstream can read it. The n8n Extract from File node converts that file into JSON items. Version 1 ships 12 operations, from CSV to base64, and every one of them starts with the same required field.
Verified Trustpilot reviews · AI, automation & growth agency
What does the n8n Extract from File node actually do?
It takes binary data, meaning a file held in an item as raw bytes rather than readable fields, and converts it to JSON. The node description says it plainly: convert binary data to JSON. Once the file has been through it, the rest of the workflow sees ordinary fields it can filter, map and send anywhere. The node runs on each incoming item, so a batch of five attachments produces five extractions in one execution.
Start with the flow the official docs use. A Webhook node receives a CSV file, with the Raw body option enabled so the binary file is actually passed on, and the Extract from File node set to Extract From CSV outputs the data as a series of JSON row objects. From there a single step pushes the rows into Google Sheets and the daily supplier file stops being a manual copy and paste.
Second scenario, invoices. A file reaches the workflow through an HTTP Request node that fetches it from a website, and Extract from PDF pulls the content and metadata out of it. With Max Pages set you stop after the pages that matter, and the extracted text can be matched against a reference before anything is archived or answered through Gmail.
Third scenario, a spreadsheet nobody wants to open. Extract from XLSX reads a Microsoft Excel file, Sheet Name picks the tab, and the rows come out as items. A short pass through Edit Fields (Set) renames the columns to the names the rest of the workflow expects, and the same file format that used to be emailed around becomes a proper data source.
Know when to look elsewhere. This node reads a file, it never writes one: for the opposite direction, turning JSON back into a binary file type, n8n provides the Convert to File node. And the file has to reach the workflow first, which is the job of a Webhook node for files sent to you, an HTTP Request node for files you fetch, or a local source.
The limits are worth reading before you build. Only the formats listed in the operations drop-down are covered, Destination Output Field exists on four operations only, and the node does not open a workflow: a trigger such as Schedule Trigger or Webhook has to come first. If you want the whole picture of how these pieces fit together, the n8n training walks through them in order.
Which operation reads your file?
The Extract from File node exposes 12 operations. For each one: the node as you configure it in n8n, the required fields, and our field notes.
Operations index
Extract from CSV
csvWhat you see in n8n
Notes & use cases
Transforms a CSV file into output items. Comma separated values is the format every tool exports to, and this operation is the one you reach for most often.
Key parameters
- Input Binary Field: required, the name of the input field containing the file data to be processed. Point it at the field the previous node produced, often
{{ $json.data }}. - Delimiter: sets the field delimiter, usually a comma. Worth setting when the export uses semicolons.
- Header Row: tells the node whether the first row of the file contains the header names. Leave it off and your columns come back numbered.
Extract from HTML
htmlWhat you see in n8n
Notes & use cases
Takes a table inside an HTML file and turns it into output items. Useful when a system publishes its report as a web page instead of a data file.
Key parameters
- Input Binary Field: required, the field holding the HTML file to be processed.
- Header Row: whether the first row of the file contains the header names, which decides whether your keys read as labels or positions.
- Include Empty Cells: switch it on to keep empty cells, filled with an empty string, so every row keeps the same shape.
Extract from ICS
fromIcsWhat you see in n8n
Notes & use cases
Reads an iCalendar file and turns it into output items. Calendar invitations travel as .ics attachments, and this is how a workflow reads what is inside one.
Key parameters
- Destination Output Field: required here, the name of the output field that will contain the extracted data, placeholder
e.g data. - Keep Source: choose
json,binaryorbothto carry the input item forward alongside the extraction.
Extract from JSON
fromJsonWhat you see in n8n
Notes & use cases
Pulls JSON data out of a binary file. The content is already structured, but as long as it sits in a file the workflow treats it as bytes, so this operation unwraps it.
Key parameters
- Destination Output Field: required, and it names the output field that will contain the extracted data.
- File Encoding: specify the encoding of the file, defaults to UTF-8. The list runs from
asciitowindows1258.
Extract from ODS
odsWhat you see in n8n
Notes & use cases
Transforms an ODS file into output items. Open document spreadsheets come out of office suites that are not Excel, and the node reads them with the same set of options.
Key parameters
- Sheet Name: name of the sheet to read from in the spreadsheet, placeholder
e.g. mySheet. Without it you are at the mercy of whichever tab comes first. - Range: the range to read from the table. A number is read as the starting row, a string as an A1 style notation range.
Extract from PDF
pdfWhat you see in n8n
Notes & use cases
Extracts the content and metadata from a PDF file. Contracts, invoices and reports arrive in this format constantly, and the text inside them is unreachable until this operation runs.
Key parameters
- Max Pages: maximum number of pages to include. Handy on long documents where only the first pages carry the data.
- Join Pages: on, the text of all pages is joined; off, you get an array of text per page.
- Password: fill it in if the PDF is encrypted, otherwise the file stays closed.
Extract from RTF
rtfWhat you see in n8n
Notes & use cases
Turns a table held in a rich text format file into output items. Older document workflows still produce RTF, and the node treats it like any other tabular source.
Key parameters
- Read As String: in some cases and file formats it is necessary to read as string so special characters are interpreted correctly. Accented text is the usual reason to enable it.
- RAW Data: returns raw data instead of parsing it, which is how you inspect what the file really contains when the result looks wrong.
Extract from text file
textWhat you see in n8n
Notes & use cases
Extracts the content of a text file. No structure, no columns, just the characters, dropped into the field you name.
Key parameters
- Destination Output Field: required, the name of the output field that will contain the extracted data, placeholder
e.g data. - Strip BOM: strips the byte order mark from the file, which helps in an environment where the presence of the BOM is causing issues or inconsistencies.
Extract from XML
xmlWhat you see in n8n
Notes & use cases
Plenty of accounting and logistics systems still export nothing but XML. This operation extracts the content of that file and makes it usable in a workflow.
Key parameters
- Input Binary Field: required, the field carrying the XML file, placeholder
e.g data. - Destination Output Field: required too, and it decides under which key the extracted tree appears in the output item.
Extract from XLS
xlsWhat you see in n8n
Notes & use cases
Transforms an Excel file into output items, in the older XLS format. Files that have been passed around for years are often still saved this way.
Key parameters
- Sheet Name: name of the sheet to read from in the spreadsheet. Set it whenever the file carries more than one tab.
- Max Number of Rows to Load: stops handling records after the requested number of rows. Use
-1to load them all, placeholdere.g. 10for a quick test.
Extract from XLSX
xlsxWhat you see in n8n
Notes & use cases
Same treatment for the current Excel format: the XLSX file becomes output items. This is the operation that replaces the weekly export someone opens by hand.
Key parameters
- Header Row: whether the first row of the file contains the header names, so your items come back keyed by column title.
- Starting Line: start handling records from the requested line number, counting from 0, placeholder
e.g. 0. Set it when the file opens with a logo and three blank rows.
Move file to base64 string
binaryToProperyWhat you see in n8n
Notes & use cases
Converts a file into a base64 encoded string, a text friendly way of carrying bytes. Nothing is parsed here: the file becomes a value you can put in a field.
Key parameters
- Input Binary Field: required, the field that currently holds the file.
- Destination Output Field: required, the output field that will contain the extracted data, which is the string itself.
- Keep Source:
json,binaryorboth, depending on what the next node still needs from the input item.
Need help automating Extract from File with n8n?
A person reads every message.
Questions people ask before building
01Is Extract from File free in n8n?
02What credentials does Extract from File need?
03What are the limits of Extract from File?
04n8n Extract from File node or Convert to File?
05n8n or Make for reading files in a workflow?
Get our weekly integration tips.
No spam. Unsubscribe anytime.


