N8n automations and webhooks: from zero to automatic deploy
Working solo means doing everything. Design, code, email, backups, support. At first I thought doing everything myself was a limitation. Then I discovered that automation solves half of your problems.
I started with n8n when I was losing leads because form submissions weren’t triggering notifications. Someone would fill out a form and I’d only discover it three days later. Lost time, lost client.
What n8n actually does
n8n is a workflow tool that connects your systems without code. It receives data from a webhook, processes it, sends it somewhere else. It’s basically a nervous system for your application.
You have two options: use their cloud (n8n.cloud) or self-hosted. Cloud you pay as you go, simpler. Self-hosted you install on a VPS and control everything, costs around USD 10-15 per month on infrastructure.
I chose self-hosted because my clinic clients require locally hosted data. I ran it on Digital Ocean for about USD 15 per month.
Webhooks as triggers
A webhook is basically a URL you call when something happens. On your site, when someone submits a form, you POST to an n8n webhook.
POST https://your-n8n.com/webhook/lead-form
n8n receives it and fires a workflow. Then you do whatever you want: send email, save to database, notify Slack.
In my clinic case, when someone books an appointment, the n8n webhook does this:
- Receives the data (name, phone, preferred date)
- Sends push notification to the dentist on WhatsApp
- Saves to database
- Triggers automatic confirmation email
All in seconds, without me touching anything.
Real cases I automated
Lead notifications. A contact form for the clinic. Each submission calls a webhook. n8n sends to Telegram, WhatsApp, saves to Supabase. If the lead doesn’t respond in 2 hours, sends automatic follow-up.
Payment reminders. Integrated with a billing system. When payment is due, n8n sends email, SMS, push notification. Increased conversion by 30% because people remember to pay when reminded.
Automatic backups. My Supabase is the heart of the application. I configured n8n to do daily backups and send to S3. Sleep peacefully.
Deploy alerts. When I deploy on Vercel, an n8n webhook notifies me. If something fails, immediate Slack alert with stack trace.
Cloud versus self-hosted
n8n cloud is easier. You create a workflow, enable webhook, done. Their support, SSL certificate, no infrastructure worry. Costs around USD 20-40 per month depending on usage.
Self-hosted is cheaper but requires maintenance. You manage updates, monitoring, SSL. If the server crashes, you discover it yourself. But for someone already running their own VPS, it’s straightforward.
I recommend cloud for beginners. After you understand the pattern, move to self-hosted if you want to save money.
Minimum setup
You need three things: an endpoint on your site that receives data, n8n running somewhere, and integrations.
In my Astro, I created a simple POST endpoint that makes an HTTP call to the n8n webhook. Done. Everything stays isolated. If n8n goes down, the site still works. If the site crashes, n8n isn’t affected.
Then you’ll discover you need more. Logging, retry logic, rate limiting. But start simple.
Mistakes I made
I tried to make workflows too complex. Received data, did five different operations, integrated with three systems. Took months to debug. Learned to keep workflows small and chain several simple ones together.
Didn’t configure timeouts. Workflows would hang because they waited for a response that never came. Now I set timeouts on everything.
Forgot that webhooks are synchronous calls. If a webhook takes 30 seconds to respond, your user is waiting. Learned to make workflows asynchronous when possible.
The truth about automation
You won’t eliminate 100% of manual work. But you eliminate 80%. That frees up time for what matters: new code, client relationships, learning.
Start with the most repetitive task. The one you do 20 times a week. Automate it. Then the next one.
- Identify your most repetitive task
- Set up a simple webhook on your site
- Choose cloud or self-hosted and create account
- Create a test workflow (Slack notification is easy)
- Integrate with your site
- Monitor logs for a week
- Expand to other integrations
If automation were easy for everyone, nobody would need a dev.
Real gains I got from automation
Before n8n: received lead, read email, sent reply manually. Sometimes took 12 hours. Client already went to competitor.
After: lead arrives, n8n sends SMS in 5 seconds, notifies Slack, saves to database, sends follow-up in 1 hour if no response. Conversion went up 40%.
Time saved per month? 15 hours easy. That’s almost a day of work recovered.
Before automatic backups: lost client data once. Server problem. Manual restore. Delayed project 3 days.
After: daily automatic backup. If something goes down, recover in 10 minutes. USD 15 per month for infrastructure. Infinite peace.
Combining multiple webhooks
Here’s where it gets powerful. One webhook triggers a workflow that calls three other things.
Example: appointment form calls webhook. n8n:
- Sends SMS to dentist (“New appointment from Maria for May 15”)
- Sends confirmation email to patient
- Adds event to dentist’s Google Calendar
- Saves to Supabase
- Sends reminder 24 hours before
All in parallel. Patient and dentist already aligned.
Without automation, you’d do it manually or write code to integrate 5 services.
Limitations I discovered
n8n isn’t magic. Has processing overhead. A webhook that takes 30 seconds to respond will make user wait.
If workflow gets too complex (10+ steps), debugging gets annoying. Hard to understand why something failed.
Monitoring is important. I set up alerts: if a webhook fails three times in a row, n8n notifies me. Because workflows can fail silently.
Self-hosted also fails. Server crashes, workflows stop. Never happened to me but it’s a risk.
When to use cloud vs self-hosted
Started in cloud. Practical, no worries. Paid USD 30/month. Then realized I could run self-hosted.
Migrated to Digital Ocean (USD 15/month VPS). Created admin account, exported workflows, imported. Took 2 hours. Now save USD 15.
Cloud if you:
- Want to start fast (zero config)
- Have comfortable budget
- Don’t want maintenance
Self-hosted if you:
- Have VPS experience
- Want to save money
- Already running infrastructure
After six months running it, don’t think I’ll go back to cloud. Used to having full control.
Documentation is critical
Workflows without documentation become mystery. Three months later you forget what each node does.
I comment every workflow. “This webhook receives lead from contact form. Validates email, sends SMS, adds to Pipedrive.”
Export documentation to Markdown. Read later without opening n8n interface.
If leaving a project, leave documentation for next dev. Saves time.
Read also: Integrations: APIs and webhooks | Cloudflare as complete infrastructure | Edge computing in practice