Build Smart Email Reply Tracking
You're sending hundreds of emails but have no clue who's actually replying. Sales reps forget to log responses, marketing can't tell which campaigns start conversations, and you're missing hot leads buried in inboxes. Reply rates are way more important than open rates, but HubSpot doesn't track them properly out of the box. You're flying blind on what actually generates engagement.
This hack outlines how to build a structured reply-tracking framework that:
-
Tracks every marketing and sales reply
-
Filters out out-of-office auto-responses
-
Scores reply engagement
-
Categorises reply intent
-
Notifies owners automatically
-
Powers reply-rate reporting dashboards
This configuration is fully supported in:
-
Marketing Hub Enterprise
-
Sales Hub Enterprise
-
(Optional) Operations Hub Professional for advanced body parsing
Before You Begin
Ensure the following are configured:
1. Connected Inbox
Navigate to:
Settings → General → Email
Confirm:
-
Gmail or Microsoft 365 inbox is connected
-
Full sync is enabled (not send-only)
2. Conversations Inbox Enabled
Navigate to:
Settings → Inbox & Routing
Ensure the Conversations Inbox is active to capture marketing email replies.
3. Automatic Email Logging Enabled
Navigate to:
Settings → Email → Log emails
Enable automatic logging of sent and received emails to the CRM.
Replies must be logged as CRM activities for workflows to trigger.
Step 1: Create Reply Tracking Properties
Navigate to:
Settings → Properties → Contact Properties
Create the following custom properties:
Core Tracking Properties
| Property Name | Field Type |
|---|---|
| total_email_replies | Number |
| last_reply_date | Date & time |
| last_reply_type | Dropdown select |
| reply_sentiment | Dropdown select |
| conversation_score | Number |
Dropdown Options
last_reply_type
-
Interest
-
Objection
-
Out of Office
-
Neutral
reply_sentiment
-
Positive
-
Neutral
-
Negative
These properties form your reply intelligence layer.
Step 2: Build the Master Reply Workflow
Navigate to:
Automation → Workflows → Create workflow
Choose:
Contact-based workflow
Workflow Name
Email Reply Detection & Scoring
Enrollment Trigger
Select:
Activity → Email reply received
This captures:
-
Marketing email replies
-
One-to-one sales replies
-
Conversations inbox replies
Enable re-enrollment if you want to track multiple replies per contact.
Step 3: Add Core Tracking Actions
Add the following actions in order:
1. Increment Reply Count
-
Action: Increase property value
-
Property:
total_email_replies -
Increment by: 1
2. Set Last Reply Date
-
Action: Set property value
-
Property:
last_reply_date -
Value: Date of step
3. Create Follow-Up Task
-
Action: Create task
-
Assign to: Contact Owner
-
Title:
Hi, replied to your email -
Priority: Medium
-
Due date: Today
This ensures replies are never missed.
Step 4: Filter Out Out-of-Office Auto Replies
Add an If/Then branch after core tracking.
Condition
Email subject contains any of:
-
"out of office"
-
"automatic reply"
-
"autoreply"
-
"away until"
-
"vacation"
-
"OOO"
If YES (Auto-Reply)
Actions:
-
Set
last_reply_type= Out of Office -
Set
reply_sentiment= Neutral -
End workflow
This prevents inflated engagement metrics.
Step 5: Score and Categorise Replies
You have two implementation options.
Option A: No-Code Scoring
This version uses subject-line keyword matching.
Branch 1: High Intent Replies
Condition: Email subject contains:
-
"meeting"
-
"schedule"
-
"demo"
-
"call"
-
"interested"
-
"let’s talk"
Actions:
-
Increase
conversation_scoreby 10 -
Set
reply_sentiment= Positive -
Set
last_reply_type= Interest
Branch 2: Negative Replies
Condition: Subject contains:
-
"not interested"
-
"remove"
-
"unsubscribe"
-
"stop"
-
"no thanks"
Actions:
-
Decrease
conversation_scoreby 5 -
Set
reply_sentiment= Negative -
Set
last_reply_type= Objection
Default Branch (All Other Replies)
Actions:
-
Increase
conversation_scoreby 3 -
Set
reply_sentiment= Neutral -
Set
last_reply_type= Neutral
This provides lightweight engagement scoring without custom code.
Option B: Advanced Scoring (Operations Hub Pro)
If you have Operations Hub Professional, you can analyse the email body using a Custom Code action.
Add a Custom Code action with input field:
-
Email body
Example:
exports.main = async (event, callback) => {
const body = (event.inputFields.email_body || "").toLowerCase();
let score = 3;
let sentiment = "Neutral";
let type = "Neutral";
if (body.includes("schedule") || body.includes("demo") || body.includes("meeting")) {
score = 10;
sentiment = "Positive";
type = "Interest";
}
if (body.includes("not interested") || body.includes("remove") || body.includes("unsubscribe")) {
score = -5;
sentiment = "Negative";
type = "Objection";
}
callback({
outputFields: {
score_delta: score,
sentiment_value: sentiment,
reply_type_value: type
}
});
};
Then:
-
Add the returned score to
conversation_score -
Set
reply_sentiment -
Set
last_reply_type
This produces stronger intent classification.
Step 6: Build Reply Rate Reporting
Navigate to:
Reports → Custom Report Builder
Select:
Contacts
Recommended Filters
-
Marketing email sent is known
-
Date range (e.g., Last 90 days)
Metrics to Add
-
Count of contacts
-
Count of contacts where
total_email_replies > 0
Add a calculated field:
Reply Rate = replied contacts / total contacts
Group by:
-
Marketing email name
This shows which campaigns generate actual conversations — not just opens.
Step 7: Create an Email Reply Intelligence Dashboard
Navigate to:
Reports → Dashboards → Create dashboard
Recommended reports:
-
Reply rate by campaign
-
Total replies over time
-
Reply sentiment breakdown
-
Conversation score distribution
-
Top contacts by conversation_score
-
Reply-to-meeting conversion
This transforms replies from inbox noise into measurable engagement data.
Important Considerations
Autoresponder Volume
Expect high OOO volume during holidays. Review keyword filters periodically.
Thread Counting
Each reply in a thread counts separately. If you prefer unique conversation tracking, adjust enrollment rules.
Gmail vs Outlook
Gmail threading is generally more consistent than Outlook. Test reply logging before rollout.
Sales & Marketing Alignment
Define ownership rules:
-
Should marketing replies go to SDRs?
-
Should sales replies stay with account owners?
Configure workflow routing accordingly.
Outcome
After implementation, you will have:
-
Automated reply tracking
-
Structured reply classification
-
Engagement scoring
-
Clean campaign-level reply reporting
-
Owner alerts for every response
This enables optimisation based on conversations started, not just email opens.
