The Edit Fields (Set) Node
Adds, removes, or reshapes the fields passing through your workflow.
What it actually does
Data moving through an n8n workflow rarely arrives in exactly the shape you need. An API might hand back twenty fields when you only care about three; a form submission might use field names that don’t match what your spreadsheet expects; you might need to add a value that doesn’t come from anywhere upstream at all, like a timestamp or a fixed label. The Edit Fields node — still often called “Set” from its older name — is the tool for all of this: it lets you add, rename, remove, or overwrite fields on the data flowing through, without writing any code.
It has two working modes. Manual Mapping is the beginner-friendly one: you pick a field name, a type (String, Number, Boolean, etc.), and either type a fixed value or reference data from earlier in the workflow — all through dropdowns and fields, no syntax required. Fixed/Expression mode lets you write the whole output as a JSON-like structure directly, which is faster once you’re comfortable with n8n’s expression syntax but has a steeper learning curve.
By default, the node only outputs the fields you’ve explicitly defined — everything else from the input is dropped. There’s an “Include Other Input Fields” toggle for when you want to keep everything and just add or override a few specific ones instead.
A worked example
An API returns a customer record with ten fields — id, name, email, phone, address, city, country, plan, signup date, status. A Google Sheets node downstream only needs two: name and email. Add an Edit Fields node, map just those two, and by default everything else is dropped automatically — the sheet stays clean without needing a separate step to strip anything out.
A second example: adding a field that doesn’t exist yet. Say you want to tag every item passing through with a fixed “source” field for reporting later. Add a field named source, type String, value website-form — every item now carries that label, regardless of what it looked like before.
The mistake almost everyone makes first
Forgetting that unlisted fields get dropped by default, then being confused later in the workflow when a field that “should” be there is suddenly missing. If you only meant to add a field while keeping everything else intact, the fix is the “Include Other Input Fields” toggle — without it, Edit Fields quietly acts as a filter as well as an editor, which catches people out until they know to expect it.
Related nodes
Code — for reshaping logic too complex for Edit Fields’ simple mapping · HTTP Request — often the node whose output needs tidying up first