18 n8n Templates for Freelancers & Solopreneurs (2026)
18 ready-to-use n8n workflow templates for freelancers and solopreneurs — onboarding, invoicing, lead gen, content, and project management automation.
Running a freelance business means being good at your actual work and being your own sales team, project manager, accountant, marketing department, and customer support. That's a lot of hats. Most freelancers are great at the work — the business operations are what slowly drain them.
Automation doesn't make you less of a freelancer. It makes you a freelancer who can take on more clients, deliver better service, and actually log off at the end of the day.
This guide gives you 18 practical n8n workflow templates organized by business function, drawn from the n8n community's most-used templates on n8n.io/workflows, the official template library. Each entry adds context: what it does, when to use it, and what to watch out for.
If you're new to n8n, read the Complete Beginner Guide first. If you want to add AI intelligence to these workflows, see the n8n AI Agent guide.
How to Use This Guide#
Each workflow template includes:
- What it does: Plain-language description
- Trigger: What starts the workflow
- Core nodes: The key steps
- Replaces: The manual task this removes from your week
- Difficulty: Beginner / Intermediate / Advanced
- Tip: One thing that trips people up
Use the table of contents to jump to the section most relevant to your situation.
Section 1: Client Onboarding Automations#
Nothing sets the tone of a client relationship like a smooth, professional onboarding experience. These workflows handle the process automatically.
Template 1: New Client Welcome Sequence#
What it does: When a new client signs a contract (via Docusign, PandaDoc, or HelloSign), this workflow automatically sends a personalized welcome email, creates their project folder in Google Drive, adds them to your CRM, and creates a project in your task manager.
Trigger: Webhook from contract signing tool
Core nodes:
- Webhook Trigger (contract signed event)
- HTTP Request → extract client data from the signing platform
- Gmail → send personalized welcome email with next steps
- Google Drive → create client folder with subfolders (Briefs, Deliverables, Invoices)
- Notion/Airtable → create CRM record with all client details
- ClickUp/Trello → create project from template
Replaces: Manually sending the welcome email, creating the client's folder structure, and adding them to your CRM and task manager one by one for each new client
Difficulty: Intermediate
Tip: Pre-create a Google Drive "template folder" with your standard subfolders and files. The workflow copies this folder structure for each new client instead of creating from scratch.
Template 2: Intake Form → Project Brief#
What it does: When a prospect fills out your intake form (Typeform, Tally, or Jotform), the workflow creates a formatted project brief document, sends it to you for review, and sends the prospect an automatic confirmation with timeline expectations.
Trigger: Typeform / Tally webhook (new form submission)
Core nodes:
- Typeform Trigger
- Set Node → format the data into a clean structure
- Notion → create "Project Brief" page with all form fields mapped to proper sections
- Gmail → send prospect a personalized confirmation email
- Slack → notify you that a new brief is ready for review
Replaces: Manually reformatting each intake submission into a brief and writing a confirmation email by hand
Difficulty: Beginner
Example confirmation email template:
Hi {{ $json.firstName }},
Thanks for reaching out! I've received your project details
and will review them carefully.
Here's what happens next:
1. I'll review your brief (usually within 24 hours)
2. If it's a good fit, I'll send a custom proposal
3. We'll schedule a 30-min call to align before starting
Looking forward to potentially working together.
Best,
[Your name]Template 3: Client Portal Invitation#
What it does: Creates a private Notion page for the client, populates it with their project brief, timeline, and deliverable checklist, and sends them an invitation link with a personal message.
Trigger: Called by Template 1 (via Execute Workflow node)
Core nodes:
- Notion → create client portal page from template
- Notion → set page icon and cover (using their company color/logo if available)
- Notion → share page with client's email address
- Gmail → send invitation email with portal link and a brief guide on how to use it
Replaces: Manually building a client portal page and writing the invitation email from scratch each time
Difficulty: Intermediate
Tip: Build a Notion template page with placeholder blocks (use {{clientName}} style placeholders in text). The workflow finds and replaces these with real values using the Code node.
Section 2: Invoicing and Payment Workflows#
Getting paid on time is the single most stressful part of freelancing for most people. Automation makes it systematic and removes the awkwardness of manually chasing overdue invoices.
Template 4: Automated Invoice Follow-Up Sequence#
What it does: Monitors your invoicing tool for overdue invoices and sends a progressively more urgent sequence of reminder emails — polite at day 3, firmer at day 7, formal notice at day 14.
Trigger: Schedule Trigger (runs daily at 9 AM)
Core nodes:
- Schedule Trigger
- HTTP Request → fetch overdue invoices from Stripe/Wave/FreshBooks API
- IF Node → filter invoices overdue by 3, 7, or 14 days
- Code Node → determine which email template to use based on days overdue
- Gmail → send appropriate reminder email
- Google Sheets → log follow-up sent (to avoid duplicates)
Replaces: Manually checking which invoices are overdue and writing a reminder email at each escalation stage
Difficulty: Intermediate
The three email tones:
Day 3 — Friendly reminder:
Subject: Quick reminder: Invoice #[number] due [date]
Hi [Name],
Just a friendly reminder that Invoice #[number] for $[amount]
was due on [date]. If you've already sent payment, please
disregard this message!
[Payment link]
Thanks,
[Your name]Day 7 — Checking in:
Subject: Following up: Invoice #[number] now 7 days overdue
Hi [Name],
I'm following up on Invoice #[number] ($[amount]), which is
now 7 days past due.
Please let me know if there's an issue with the invoice or
if you need payment terms adjusted.
[Payment link]
Thanks,
[Your name]Day 14 — Formal notice:
Subject: [URGENT] Invoice #[number] - 14 days overdue
Hi [Name],
Invoice #[number] ($[amount]) is now 14 days past the due date.
Please process payment within 3 business days to avoid a
late fee of [X]%. If you're experiencing difficulties, please
reply to discuss payment arrangements.
[Payment link]
[Your name]Template 5: Payment Received → Receipt and Thank You#
What it does: When Stripe marks an invoice as paid, immediately sends a receipt email, updates your project status in Notion, and logs the payment in your accounting spreadsheet.
Trigger: Stripe webhook (invoice.paid event — fires whenever an invoice payment attempt succeeds or an invoice is marked paid out-of-band)
Core nodes:
- Stripe Webhook Trigger
- Gmail → send custom receipt with project name (not just a generic Stripe receipt)
- Notion → update client page status to "Paid" and add payment date
- Google Sheets → append row to accounting sheet (date, client, amount, invoice #)
- Slack → notify yourself (optional, but satisfying)
Replaces: Manually sending a receipt, updating the client's project status, and re-entering the payment into your accounting sheet
Difficulty: Beginner
Template 6: Monthly Revenue Report#
What it does: On the 1st of every month, pulls all payments from the previous month, calculates total revenue, compares to the previous month, lists top clients, and emails you a formatted summary.
Trigger: Schedule Trigger (1st of month, 8 AM)
Core nodes:
- Schedule Trigger
- Stripe API → fetch all successful charges from last month
- Code Node → aggregate by client, calculate totals and MoM growth
- Google Sheets → update monthly revenue tracking sheet
- Gmail → send formatted HTML email with summary stats
- Notion → create monthly revenue page
Replaces: Manually pulling last month's payments and totaling them by client for a revenue summary
Difficulty: Intermediate
The Code node for aggregation:
const items = $input.all();
const charges = items.map(i => i.json);
// Group by customer
const byCustomer = {};
charges.forEach(charge => {
const customer = charge.customer_email || 'Unknown';
if (!byCustomer[customer]) {
byCustomer[customer] = { total: 0, count: 0 };
}
byCustomer[customer].total += charge.amount / 100;
byCustomer[customer].count += 1;
});
const totalRevenue = charges.reduce((sum, c) => sum + c.amount / 100, 0);
return [{
json: {
totalRevenue,
totalInvoices: charges.length,
topClients: Object.entries(byCustomer)
.sort(([,a], [,b]) => b.total - a.total)
.slice(0, 5)
.map(([email, data]) => ({ email, ...data }))
}
}];Section 3: Lead Generation and CRM#
Most freelancers have no systematic approach to leads. These workflows create one automatically.
Template 7: Website Contact Form → CRM + Qualification#
What it does: When someone submits your contact form, it creates a CRM record, enriches their profile with company data (using Clearbit or Apollo.io API), scores the lead based on your criteria, and notifies you with a prioritized summary.
Trigger: Webhook from your form (Tally, Typeform, Gravity Forms)
Core nodes:
- Webhook Trigger
- HTTP Request → Clearbit Enrichment API (company size, industry, revenue)
- Code Node → calculate lead score based on budget, company size, project type
- Notion/Airtable → create enriched CRM record
- IF Node → high score vs. low score
- Slack → urgent notification for high-score leads, email digest for others
Replaces: Manually looking up company data and scoring each inbound lead yourself
Difficulty: Intermediate
Lead scoring formula example:
const lead = $json;
let score = 0;
// Budget signals
if (lead.budget > 5000) score += 30;
else if (lead.budget > 2000) score += 15;
// Company size (from enrichment)
if (lead.companySize > 50) score += 20;
else if (lead.companySize > 10) score += 10;
// Project type
if (lead.projectType === 'ongoing') score += 25;
if (lead.projectType === 'website') score += 15;
// Urgency
if (lead.startDate === 'immediately') score += 10;
return [{ json: { ...lead, leadScore: score, priority: score > 50 ? 'high' : 'normal' } }];Template 8: LinkedIn Profile Visitor → Outreach Sequence#
What it does: Monitors your LinkedIn profile views (via LinkedIn API or Phantombuster) and for visitors from target companies, automatically researches their profile, finds their email, and queues a personalized connection request.
Trigger: Schedule Trigger or Phantombuster webhook
Core nodes:
- HTTP Request → LinkedIn API or Phantombuster data
- Code Node → filter visitors from target industries/company sizes
- HTTP Request → Hunter.io or Apollo.io to find email
- Notion → add to "Warm Leads" database with profile info
- Gmail draft → create personalized outreach draft for your review (does NOT auto-send)
Replaces: Manually reviewing profile visitors, researching each one, and drafting outreach by hand — the workflow still leaves the actual sending to you
Difficulty: Advanced
Tip: Never auto-send outreach emails. This workflow creates drafts that you review and send. The automation does the research and writing — you maintain the human judgment about who to contact.
Template 9: Proposal Sent → Follow-Up Reminder#
What it does: When you send a proposal, starts a follow-up timer. If no response in 3 days, creates a Slack reminder. If no response in 7 days, drafts a follow-up email for your review.
Trigger: Manual Trigger (you click it after sending a proposal) OR Gmail label trigger
Core nodes:
- Manual Trigger / Gmail Trigger (email labeled "Proposal Sent")
- Notion → create follow-up tracking record with client name and proposal date
- Wait Node → pause 3 days
- HTTP Request → check if reply received (search Gmail for emails from that contact)
- IF Node → reply received vs. no reply
- If no reply: Slack reminder + Gmail draft
- Wait Node → pause 4 more days
- Repeat check and escalate if still no reply
Replaces: Manually remembering to follow up on a sent proposal — the recurring "did I already check in on this?" problem
Difficulty: Intermediate
Section 4: Content and Social Media Workflows#
If content marketing is part of your client acquisition strategy, these workflows reduce the repetitive distribution work significantly.
Template 10: Blog Post → Multi-Platform Distribution#
What it does: When you publish a new blog post (detected via RSS or CMS webhook), automatically creates and schedules social media posts for Twitter/X, LinkedIn, and optionally a newsletter teaser — each formatted appropriately for the platform.
Trigger: RSS Feed Trigger (your blog's RSS) or CMS webhook
Core nodes:
- RSS Trigger or Webhook
- HTTP Request → fetch full article content
- AI/LLM Node (Ollama or OpenAI) → generate platform-specific summaries
- Twitter/X: engaging tweet thread starter under 280 characters
- LinkedIn: professional post with 3 key takeaways
- Newsletter: teaser paragraph with "read more" link
- Buffer/Hootsuite API → schedule Twitter and LinkedIn posts
- Mailchimp/ConvertKit → draft newsletter segment
Replaces: Manually writing and scheduling a platform-specific summary post for each new article
Difficulty: Intermediate
Platform-specific prompts:
Twitter prompt: "Write a compelling tweet to promote this article.
Include a hook, 2-3 key insights as bullet points, and end with
a question to drive engagement. Max 280 chars for the opening tweet.
Article: {{ $json.content }}"
LinkedIn prompt: "Write a professional LinkedIn post about this article.
Start with a bold opening statement. Include 3 numbered key takeaways.
End with a thought-provoking question. Tone: insightful but conversational.
Article: {{ $json.content }}"Template 11: Content Idea → Research Brief#
What it does: You submit a content topic via a form or Slack command. The workflow searches for related articles, identifies content gaps, finds popular questions people ask about the topic, and creates a structured writing brief in Notion.
Trigger: n8n Form or Slack slash command
Core nodes:
- Form Trigger / Slack Trigger
- SerpAPI → search for existing articles on the topic
- HTTP Request → Answer The Public API or Google's PAA results
- AI Node → analyze gaps and structure the brief
- Notion → create detailed writing brief with: target keyword, outline, FAQs to address, competing articles, unique angle
Replaces: Manually researching existing coverage, content gaps, and common questions before starting to write
Difficulty: Advanced
Template 12: Weekly Content Performance Report#
What it does: Every Monday morning, pulls performance data from Google Analytics, your blog CMS, and social platforms, and generates a simple performance email showing what's working.
Trigger: Schedule Trigger (Monday 8 AM)
Core nodes:
- Schedule Trigger
- Google Analytics API → sessions, pageviews, top pages last 7 days
- Twitter API → engagement on posts from last week
- LinkedIn API → post performance
- Code Node → calculate growth rates, identify top content
- Gmail → send formatted performance report to yourself
Replaces: Manually pulling analytics and social metrics into a weekly performance summary
Difficulty: Intermediate
Section 5: Project Management Workflows#
These workflows bridge the gap between client communication and your internal project tracking.
Template 13: Client Feedback → Revision Tracker#
What it does: When a client sends feedback (via email, comment in Notion, or a dedicated feedback form), the workflow parses the feedback, creates numbered revision tasks in your project manager, and sends an acknowledgment confirming you received it with an expected turnaround time.
Trigger: Notion webhook (comment added) or Gmail Trigger (subject contains "Feedback")
Core nodes:
- Notion Webhook / Gmail Trigger
- AI Node → extract individual actionable revision items from unstructured feedback
- ClickUp/Trello → create one task per revision item, linked to the project
- Gmail → send acknowledgment with revision count and turnaround date
- Notion → update project status to "In Revision"
Replaces: Manually re-reading feedback, splitting it into tasks, and writing an acknowledgment for each revision round
Difficulty: Intermediate
Template 14: Project Status → Weekly Client Update#
What it does: Every Friday, fetches completed tasks from your project manager, formats them into a client-friendly update email, and sends it automatically. Clients stay informed without you spending time writing updates.
Trigger: Schedule Trigger (Friday 4 PM)
Core nodes:
- Schedule Trigger
- ClickUp/Notion API → fetch tasks completed this week for each active project
- IF Node → skip projects with no activity this week
- AI Node → convert task list into natural language progress summary
- Gmail → send personalized weekly update to each client
Replaces: Manually writing a status update email for each active client every week
Difficulty: Intermediate
Example update format:
Subject: [Project Name] Weekly Update — Week of April 5
Hi [Client Name],
Here's a quick update on your project this week:
✅ Completed this week:
- [Item 1]
- [Item 2]
- [Item 3]
🔄 In progress:
- [Item 4] (expected completion: [date])
📋 Coming up next week:
- [Item 5]
- [Item 6]
No blockers at the moment. Let me know if you have any questions!
[Your name]Template 15: Deadline Alert System#
What it does: Checks your project deadlines daily and sends escalating alerts: 7 days out (Slack reminder), 3 days out (email + Slack), 1 day out (urgent Slack + calendar block).
Trigger: Schedule Trigger (daily at 8 AM)
Core nodes:
- Schedule Trigger
- Notion/ClickUp API → fetch all projects with due dates
- Code Node → calculate days until deadline for each
- Switch Node → route to 7-day, 3-day, or 1-day alert path
- Slack → send appropriate urgency notification
- Google Calendar (1-day path) → create "DEADLINE" event for tomorrow
Replaces: Manually tracking every project deadline and remembering to escalate as one approaches
Difficulty: Beginner
Section 6: Personal Productivity Workflows#
These are for your own sanity — the automations that keep your work life organized.
Template 16: Daily Briefing and Planning#
What it does: Every morning at 7:30 AM, compiles your agenda: calendar events, overdue tasks, top 3 priorities (based on due dates), and any client messages that need responses — all in one Slack message.
Trigger: Schedule Trigger (7:30 AM, weekdays only)
Core nodes:
- Schedule Trigger
- Google Calendar → fetch today's events
- Notion/ClickUp → fetch tasks due today or overdue
- Gmail → count unread emails from last 24 hours
- Code Node → format everything into a clean daily brief
- Slack → send to your personal DM
Replaces: Manually checking your calendar, task list, and inbox separately each morning to plan the day
Difficulty: Intermediate
Template 17: Capture Anything → Notion Inbox#
What it does: A single endpoint that accepts text from anywhere — a Slack message, an email, a browser extension, a phone shortcut — and adds it to your Notion inbox for later processing. Never lose an idea again.
Trigger: Webhook Trigger (exposed URL you can call from anywhere)
Core nodes:
- Webhook Trigger (accepts: text, source, optional tags)
- Code Node → clean and format the input
- Notion → create page in "Inbox" database with text, source, date
- Slack → confirm capture with preview
Replaces: Deciding, in the moment, where to save a quick idea so you don't lose track of it
Difficulty: Beginner
How to use from iPhone: Create an iOS Shortcut that asks for text input and sends a POST request to your n8n webhook URL. One tap, anything goes to Notion.
Template 18: Weekly Review Generator#
What it does: Every Sunday evening, pulls your completed work from the week, calculates hours logged, revenue invoiced, and tasks completed, then creates a "Weekly Review" Notion page with reflection prompts already filled with your data.
Trigger: Schedule Trigger (Sunday 7 PM)
Core nodes:
- Schedule Trigger
- Toggl/Clockify API → hours logged per client this week
- Stripe API → revenue invoiced this week
- Notion/ClickUp → completed tasks count
- Google Calendar → events attended
- Code Node → calculate utilization rate, revenue per hour, tasks per day
- Notion → create Weekly Review page with metrics + blank reflection sections
Replaces: Manually pulling hours logged, revenue invoiced, and completed tasks together for your weekly review
Difficulty: Intermediate
Building Your Automation Stack: Where to Start#
With 18 templates in front of you, the temptation is to build all of them immediately. Don't. Automation debt (workflows you set up but never maintain) is real.
Start with one template from whichever section causes you the most pain right now.
If late invoices keep you up at night: Template 4 (invoice follow-up). If onboarding new clients takes forever: Template 1 (welcome sequence). If you keep forgetting to follow up on proposals: Template 9. If you waste Fridays writing client updates: Template 14.
Get one workflow running and generating real value before building the next. The feedback loop — seeing a workflow run and actually help — is what motivates you to build more.
Maintaining Your Workflows#
Automations aren't set-and-forget forever. APIs change. Services update their authentication. Your business processes evolve.
Monthly maintenance checklist:
- Review execution history for any workflows with recent errors
- Check credentials — re-authenticate any that have expired
- Review AI-generated content quality in workflows that use LLMs
- Look for new integrations you're now using that could be automated
When a workflow breaks (and they will):
- Open the execution log and find the failed execution
- Click through to see which node errored and why
- Most errors are: expired credentials, changed API fields, or rate limits
- Fix, re-test, and document what changed in the workflow description
Final Thoughts#
There's a version of freelancing where you're always slightly overwhelmed — chasing invoices, writing the same emails, manually compiling reports, losing track of follow-ups. And there's a version where the business largely runs itself while you do the actual work you're good at.
n8n is the bridge between those two versions.
Start with the automation that addresses your biggest pain point today. Build it, test it, activate it. See how it feels after a week. Then add one more.
The goal isn't to automate everything — it's to automate the things that drain your energy without creating value. Free that energy for the work that actually matters.
Related guides: Get started with n8n using the Complete Beginner Guide, or add AI intelligence to your workflows with the n8n AI Agents with Ollama guide.
Further reading: n8n Client Reporting Workflow: ClickUp, Toggl and Gmail.
Frequently Asked Questions
Still stuck? Paste your error.
Paste the error message or stack trace — we check it against every fix and tool on the site.
One email a month — the latest explained errors
What the site published that month — mostly Next.js, Supabase and Node errors, explained. You confirm by email; unsubscribe any time in one click.
Related Guides
n8n Beginner Guide 2026: Build Your First Automation
Learn n8n from scratch: installation, core concepts, your first workflow, and real automation examples that save hours every week.
Best Ollama Models for n8n AI Agents (2026 Guide)
Build n8n AI agent workflows with Ollama local LLMs — best models, setup, working examples. No OpenAI bills, full data privacy.
n8n Queue Mode Checklist: Redis, Postgres 16+, Workers
Run n8n queue mode with Redis, Postgres 16+ and workers sharing one N8N_ENCRYPTION_KEY — plus the binary-data filesystem caveat the docs bury.

