TL;DR Key Takeaways
Introduction
The Problem
- Outreach agency with 150 inboxes missing follow-ups
- 27% of warm replies never received a response
- Considering Rebump ($9.99/inbox) + FrontApp ($19/user)
- Total cost: $1,879/month ($22,548/year)
Our Solution
- Custom n8n + Chatwoot + Airtable automation
- Intelligent follow-up system that only triggers when needed
- Total cost: $99/month ($1,188/year)
- 95% cost reduction with better results
For outreach agencies, maintaining consistent communication with prospects is crucial. However, manually tracking and sending follow-up emails can be time-consuming and error-prone. When one of our clients, an outreach agency with 150 inboxes and 20 team members, approached us with this challenge, we knew automation was the answer.
The agency was considering using Rebump ($9.99/inbox) and FrontApp ($19/user/month) to manage their follow-ups and team inbox. This would have cost them over $1,499/month for Rebump alone (150 inboxes × $9.99), plus an additional $380/month for FrontApp (20 users × $19). That's a total of $1,879/month or $22,548/year just for these tools!
Instead, we built a custom automation solution using n8n (open-source workflow automation), Chatwoot (open-source customer engagement), and Airtable (for data storage). The result? A system that not only saved them thousands of dollars but also improved their response rates and customer engagement.
What is an Automated Intra-Conversation Follow-Up?

An automated intra-conversation follow-up system monitors ongoing email threads and automatically sends follow-up messages when a prospect hasn't responded within a certain timeframe. Unlike traditional drip campaigns that send a series of emails regardless of recipient engagement, intra-conversation follow-ups are context-aware and only trigger when needed.
The system we built works by:
- Monitoring incoming messages in Chatwoot
- Identifying conversations that need follow-up
- Sending templated responses at optimal intervals
- Logging all activities in Airtable for tracking and analysis
The Benefits of Automation

The efficiency gains from automation are substantial. Tasks that used to take hours now happen in seconds, without human intervention. This allows the outreach team to focus on high-value activities like building relationships and closing deals, rather than manually tracking follow-ups.
Key benefits include:
- Consistency: Every conversation gets followed up on time, every time
- Speed: Immediate processing of new messages and quick response generation
- Accuracy: No more forgotten follow-ups or missed opportunities
- Scalability: The system handles hundreds of conversations simultaneously
- Cost savings: Over $22,000 per year compared to commercial solutions
From Missed Messages to Closed Deals

Our research showed that approximately 27% of warm replies never received a human follow-up in the agency's workflow. These were potential deals that simply fell through the cracks due to human error or oversight. With our automated system, these opportunities are now captured and nurtured.
The impact was immediate and significant. Within the first month of implementation, the agency saw:
- A 32% increase in response rates from prospects
- 15% more conversations progressing to the next stage of the sales funnel
- 8% increase in overall conversion rate
- Approximately 20 hours per week saved across the team
Want the n8n Workflow Templates?
Get the complete n8n workflow templates used in this project, plus a step-by-step implementation guide. These are the exact templates that saved our client over $21,000 per year.
Technical Implementation
Our solution consists of two main n8n workflows that work together to create a robust follow-up system.
Data Structure

We use Airtable to store all conversation metadata, including message IDs, content, timestamps, sender information, and message types. This structured approach allows us to easily track the status of each conversation and determine when follow-ups are needed.
Workflow 1: Conversation Monitoring
The first workflow is triggered whenever a conversation is updated in Chatwoot. It:
- Listens for conversation updates via a webhook
- Checks if the conversation has been labeled for follow-up
- Retrieves the latest message in the conversation
- Filters out system messages and internal notes
- Records the conversation details in Airtable
- Schedules follow-ups at predetermined intervals
A key feature of this workflow is the intelligent filtering system that ensures only relevant messages trigger follow-ups. We exclude system messages, private notes, and other non-customer communications to prevent unnecessary follow-ups.
Workflow 2: Follow-Up Execution
The second workflow handles the actual sending of follow-up messages:
- Triggered by a webhook when a follow-up is due
- Retrieves the conversation details from Airtable
- Adds a random delay to make messages appear more natural
- Checks if a response has already been received (to avoid unnecessary follow-ups)
- Sends the appropriate follow-up message via Chatwoot's API
- Updates the conversation record in Airtable
We implemented a randomized delay feature to make the follow-ups feel more natural and less automated. This small touch significantly improves the recipient experience and increases response rates.
Key Code Snippets
Here's a simplified version of the JavaScript code we use to add a random delay to our follow-ups:
// Add a random delay between 1-100 seconds
const randomDelay = Math.floor(Math.random() * 100) + 1;
return [
{
json: {
randomDelay: randomDelay
}
}
];
And here's how we filter messages to ensure we're only processing relevant communications:
// Filter out system messages and internal notes
if (
message.content.includes("PRIVATE NOTE") ||
message.content.includes("Assigned to") ||
message.content.includes("Conversation was marked") ||
message.content.includes("changed the priority") ||
message.private === true
) {
return false; // Skip this message
}
return true; // Process this message
Implementation Challenges
Building this system wasn't without challenges. Some of the key hurdles we overcame included:
- API Rate Limiting: We had to implement careful throttling to avoid hitting Chatwoot's API limits, especially for accounts with high message volumes.
- Message Deduplication: Ensuring the same message didn't trigger multiple follow-ups required careful tracking of message IDs and conversation states.
- Error Handling: Building robust error recovery mechanisms to handle API failures, network issues, and other potential problems.
- Follow-up Timing: Finding the optimal timing for follow-ups required experimentation and analysis of response patterns.
Cost Comparison
Solution | Monthly Cost | Annual Cost | Notes |
---|---|---|---|
Rebump + FrontApp | $1,879 | $22,548 | $9.99/inbox × 150 inboxes + $19/user × 20 users |
Our Custom Solution | $99 | $1,188 | n8n hosting + Airtable Pro plan |
Annual Savings | $1,780 | $21,360 | 95% cost reduction |
The cost savings are substantial. Our solution costs just $99/month to maintain, compared to $1,879/month for the commercial alternatives. That's a 95% reduction in costs while providing a more customized and effective solution.
Conclusion
Automating intra-conversation follow-ups has transformed how our client manages their outreach operations. Not only have they saved over $21,000 annually on software costs, but they've also improved their team's efficiency and increased their conversion rates.
This case study demonstrates the power of custom automation solutions built with open-source tools. By understanding the specific needs of the business and leveraging the right technologies, we were able to create a system that delivers significant ROI while enhancing the customer experience.
If you're interested in implementing a similar solution for your business, we'd love to help. Our team specializes in building custom automation workflows that solve real business problems and deliver measurable results.