Form to CRM Follow-up
Module 05 · business · beginner
starter.json
In n8n, copy this file and paste it onto the canvas, or use Import from File.
{
"name": "05 - Form to CRM Follow-up (starter)",
"nodes": [
{
"parameters": {
"formTitle": "Work with me",
"formDescription": "Tell me about your project and I'll get back to you within 24 hours.",
"formFields": {
"values": [
{
"fieldLabel": "Name",
"requiredField": true
},
{
"fieldLabel": "Email",
"fieldType": "email",
"requiredField": true
},
{
"fieldLabel": "Company"
},
{
"fieldLabel": "What do you need help with?",
"fieldType": "dropdown",
"fieldOptions": {
"values": [
{
"option": "Automation"
},
{
"option": "AI agent"
},
{
"option": "Integration"
},
{
"option": "Something else"
}
]
},
"requiredField": true
},
{
"fieldLabel": "Budget",
"fieldType": "dropdown",
"fieldOptions": {
"values": [
{
"option": "Under $1k"
},
{
"option": "$1k-$5k"
},
{
"option": "Over $5k"
}
]
},
"requiredField": true
},
{
"fieldLabel": "Details",
"fieldType": "textarea"
}
]
},
"options": {
"path": "work-with-me",
"appendAttribution": false,
"respondWithOptions": {
"values": {
"formSubmittedText": "Thanks! Check your inbox, I've sent you a confirmation."
}
}
}
},
"id": "m05-form",
"name": "Contact Form",
"type": "n8n-nodes-base.formTrigger",
"typeVersion": 2.3,
"position": [
0,
100
],
"webhookId": "course-05-form"
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "n1",
"name": "name",
"value": "={{ $json['Name'].trim() }}",
"type": "string"
},
{
"id": "n2",
"name": "first_name",
"value": "={{ $json['Name'].trim().split(' ')[0] }}",
"type": "string"
},
{
"id": "n3",
"name": "email",
"value": "={{ $json['Email'].trim().toLowerCase() }}",
"type": "string"
},
{
"id": "n4",
"name": "company",
"value": "={{ ($json['Company'] ?? '').trim() }}",
"type": "string"
},
{
"id": "n5",
"name": "need",
"value": "={{ $json['What do you need help with?'] }}",
"type": "string"
},
{
"id": "n6",
"name": "budget",
"value": "={{ $json['Budget'] }}",
"type": "string"
},
{
"id": "n7",
"name": "details",
"value": "={{ $json['Details'] ?? '' }}",
"type": "string"
},
{
"id": "n8",
"name": "priority",
"value": "={{ $json['Budget'] === 'Over $5k' ? 'high' : 'normal' }}",
"type": "string"
},
{
"id": "n9",
"name": "status",
"value": "new",
"type": "string"
},
{
"id": "n10",
"name": "submitted_at",
"value": "={{ $now.toISO() }}",
"type": "string"
}
]
},
"options": {}
},
"id": "m05-normalize",
"name": "Normalize Lead",
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
220,
100
]
},
{
"parameters": {
"content": "## Your task\n1. Create a Google Sheet with a **CRM** tab (headers in assets/crm-template.csv).\n2. Save each lead with **Append or Update Row**, matching on `email`.\n3. Send a personalized **welcome email** with Gmail (use `first_name` and `need`).\n4. **Wait** 2 days, then send a follow-up.\n\nOpen the form: http://localhost:5678/form-test/work-with-me (click *Execute workflow* first).",
"height": 260,
"width": 420
},
"id": "starter-task-note",
"name": "Your Task",
"type": "n8n-nodes-base.stickyNote",
"typeVersion": 1,
"position": [
0,
-340
]
}
],
"connections": {
"Contact Form": {
"main": [
[
{
"node": "Normalize Lead",
"type": "main",
"index": 0
}
]
]
},
"Normalize Lead": {
"main": [
[]
]
}
},
"pinData": {},
"settings": {
"executionOrder": "v1"
}
}