n8n cheat sheet
The core nodes and words you'll meet in every recipe. Each node name links to its official doc.
Core nodes
| Manual Trigger | Runs the workflow when you click Test. Good for trying things. |
| Schedule Trigger | Runs every X minutes, or by cron (e.g. weekdays 09:00). |
| Webhook | Gives you a URL. Any app that POSTs to it starts the workflow. |
| n8n Form Trigger | A hosted form; each submission starts a run. |
| HTTP Request | Calls any API, even when no dedicated node exists. |
| Edit Fields (Set) | Add, rename or keep only certain fields. |
| If / Switch | Send items down different paths by a condition. |
| Filter | Drop items that don't match a condition. |
| Merge | Join data from two branches. |
| Code | JavaScript or Python for anything the other nodes can't do. |
| Wait | Pause for a time or until a webhook call (e.g. a follow-up in 2 days). |
| Loop Over Items | Process items in batches (for rate-limited APIs). |
| Respond to Webhook | Choose exactly what the webhook caller gets back. |
| Error Trigger | Starts an alert workflow when another workflow fails. |
Glossary
| Workflow | A set of connected nodes that does one job. |
| Node | One step: a trigger, an app action or a logic block. |
| Trigger | The first node; decides when the workflow runs. |
| Item | One record of data (JSON). Nodes run once per item by default. |
| Execution | One run of a workflow. n8n Cloud prices by executions. |
| Expression | Dynamic value in {{ }}, e.g. {{ $json.email }}. |
$json | The current item's data from the previous node. |
$('Node').item.json | Data from a specific earlier node. |
| Credential | Saved login or API key for an app, kept out of the workflow file. |
| Active | A switched-on workflow that runs from its trigger by itself. |
| Test vs Production URL | Webhook URLs: Test only while listening in the editor; Production when Active. |
| Pinned data | Saved sample output on a node, so you can build without re-calling an API. |
| Sub-workflow | A workflow called by another with Execute Workflow. |
Handy expressions
{{ $json.email }} current item field
{{ $('Normalize lead').item.json.phone }} field from a named node
{{ $now.toISO() }} current time
{{ $now.plus({days:1}).toFormat('yyyy-MM-dd') }} tomorrow
More in the expressions docs. New here? n8n from zero →