Play 1 Workflow Diagram (Visual)
Visual flowchart of the three workflows: email logging, calendar logging, daily digest. Downloadable.
Play 1 Workflow Diagram (Visual)
The Three Automations That Eliminate CRM CRMClick to read the full definition in our AI & Automation Glossary. Busywork
Your team spends 4-6 hours per week logging emails, updating meeting notes, and checking what's due today. That's 250 hours per year per person - gone.
This diagram maps three automations that cut that time to zero:
- Email Logging: Every client email lands in your CRMautomatically. No forwarding, no manual entry.CRMClick to read the full definition in our AI & Automation Glossary.
- Calendar Logging: Every client meeting syncs to the right account record with attendees and notes.
- Daily Digest: One morning email with today's meetings, overnight client emails, and open action items.
These aren't aspirational. They're production-ready workflows you can build in 2-3 hours using tools you already own.
Email Logging Workflow
Goal: Capture every client email in your CRM
Tools Required: Email client (Outlook, Gmail), CRM
Step 1: Enable BCC Auto-Forwarding
Set up a rule in your email client to BCC a dedicated address on all outbound client emails.
In Outlook (Microsoft 365):
- Go to File > Manage Rules & Alerts > New Rule
- Select "Apply rule on messages I send"
- Add condition: "sent to people or public group" > enter your client domain (e.g.,
@clientfirm.com) - Add action: "Cc or Bcc the message to people or public group" > enter
crm@yourfirm.com - Name the rule "Client Email Auto-Log" and activate
In Gmail (Google Workspace):
- Install the "Auto BCC for Gmail" add-on or use Google Apps Script
- Configure to BCC
crm@yourfirm.comon all emails where recipient domain matches your client list - Alternative: Use a filter to auto-forward emails with specific labels to your CRMingestion addressCRMClick to read the full definition in our AI & Automation Glossary.
Step 2: Configure CRM CRMClick to read the full definition in our AI & Automation Glossary. Email-to-Record Parsing
Point your CRMcrm@yourfirm.com and create activity records.
In Salesforce:
- Navigate to Setup > Email-to-Salesforce
- Generate a unique email address (e.g.,
abc123xyz@email.salesforce.com) - Set this as the forwarding destination in Step 1
- Configure "Automatically associate emails to records" based on email address matching
- Set default record type to "Email" under Activities
In HubSpot:
- Go to Settings > Integrations > Email Integrations
- Enable "Log emails sent to contacts"
- Add
crm@yourfirm.comas a forwarding address under "Email forwarding address" - HubSpot will auto-match emails to contacts by sender address
- For unmatched emails, create a workflow: "If email sender is unknown, create task for account owner to associate"
In Pipedrive:
- Go to Settings > Email sync
- Enable "BCC to Pipedrive" and copy your unique BCC address
- Use this address in your email client rules
- Pipedrive will automatically link emails to deals and contacts based on email address
Step 3: Set Up Contact/Account Matching Rules
Ensure incoming emails attach to the correct client records.
Matching Logic:
- Primary: Match sender email address to Contact record
- Secondary: Match sender domain to Account record
- Fallback: Create task for manual association if no match found
In Salesforce:
- Use Email-to-Case with custom matching rules
- Create a Process Builder flow: "When new Email Message is created, if Contact is null, search for Contact by email address, then update Email Message"
- For multi-contact accounts, default to the most recently active contact
In HubSpot:
- HubSpot handles this automatically via contact email matching
- For shared inboxes (e.g.,
info@clientfirm.com), create a workflow: "If email is from shared inbox, associate with Account owner's default contact"
Step 4: Configure Team Notifications
Alert the right people when client emails arrive.
In Salesforce:
- Create a workflow rule: "When Email Message is created, if Account Owner is [User], send email alert"
- Include email subject, sender, and link to record in the alert template
In HubSpot:
- Go to Settings > Notifications > Activity notifications
- Enable "Email logged" notifications for account owners
- Set digest frequency to "Real-time" for urgent clients, "Daily" for others
In Pipedrive:
- Navigate to Settings > Notifications
- Enable "New email activity" notifications
- Filter by deal stage (e.g., only notify for active deals, not closed-won)
Calendar Logging Workflow
Goal: Every client meeting appears in your CRM
Tools Required: Calendar app (Google Calendar, Outlook), CRM
Step 1: Connect Calendar to CRM CRMClick to read the full definition in our AI & Automation Glossary.
Establish a two-way sync between your team's calendars and your CRM
In Salesforce:
- Install "Einstein Activity Capture" (included in most licenses)
- Go to Setup > Einstein Activity Capture
- Connect Microsoft 365 or Google Workspace
- Select which calendars to sync (recommend: all client-facing team members)
- Enable "Sync events to Salesforce" and "Sync Salesforce events to calendar"
In HubSpot:
- Go to Settings > Integrations > Calendar
- Connect Google Calendar or Office 365
- Enable "Log meetings to HubSpot" and "Sync HubSpot meetings to calendar"
- Set sync direction to "Two-way"
In Pipedrive:
- Navigate to Settings > Calendar sync
- Connect Google Calendar or Outlook
- Enable "Sync calendar events to Pipedrive"
- Choose sync frequency (recommend: every 15 minutes)
Step 2: Define Client Meeting Identification Rules
Not every calendar event is a client meeting. Set rules to filter what syncs.
Identification Criteria:
- Event title contains client name or account name
- Attendee email domain matches client domain
- Event is marked with specific label/category (e.g., "Client Meeting")
- Event location is external (not your office)
In Salesforce (Einstein Activity Capture):
- Go to Setup > Einstein Activity Capture > Configurations
- Create a new configuration for "Client Meetings"
- Add filter: "Event subject contains [Client Name]" OR "Attendee email domain is [clientdomain.com]"
- Apply configuration to specific users or profiles
In HubSpot:
- HubSpot syncs all meetings with contacts automatically
- To filter, create a workflow: "If meeting attendee is not a HubSpot contact, do not sync"
- Alternative: Use meeting types (e.g., "Client Strategy Call") to control what syncs
In Pipedrive:
- Pipedrive syncs all calendar events by default
- Use Zapier to add filtering: "Only sync events where attendee email matches a Pipedrive contact"
Step 3: Enrich Meeting Records with Context
Capture meeting notes, outcomes, and next steps automatically.
Pre-Meeting Enrichment:
- Sync meeting agenda from calendar event description to CRM"Meeting Notes" fieldCRMClick to read the full definition in our AI & Automation Glossary.
- Pull attendee list from calendar and match to CRMcontactsCRMClick to read the full definition in our AI & Automation Glossary.
- Attach related deals, opportunities, or projects to the meeting record
Post-Meeting Enrichment:
- Use a meeting notes template (Google Doc or OneNote) that auto-populates CRMfieldsCRMClick to read the full definition in our AI & Automation Glossary.
- Integrate with transcription tools (Otter.ai, Fireflies.ai) to capture meeting transcript
- Create a workflow: "24 hours after meeting, if notes are empty, send reminder to meeting owner"
In Salesforce:
- Use a custom "Meeting Outcome" field with picklist values: Positive, Neutral, Needs Follow-Up, At Risk
- Create a Process Builder flow: "When Event is updated, if Outcome is 'Needs Follow-Up', create Task for account owner"
In HubSpot:
- Use meeting outcomes and meeting notes properties
- Create a workflow: "When meeting is logged, send internal notification to account owner with meeting details"
Step 4: Set Up Meeting Prep Notifications
Alert team members before client meetings with relevant context.
In Salesforce:
- Create a workflow rule: "1 hour before Event start time, send email alert to Event owner"
- Include in alert: Client name, recent emails, open opportunities, last meeting notes
In HubSpot:
- Use the "Meeting reminders" feature under Settings > Notifications
- Customize reminder content to include recent contact activity and deal stage
In Pipedrive:
- Enable "Upcoming activity" notifications
- Set reminder timing to 1 hour before meeting
- Include deal summary and recent activity in notification
Daily Digest Workflow
Goal: One email every morning with today's meetings, overnight client emails, and open tasks. No CRM
Tools Required: CRM
Step 1: Define Digest Data Sources
Pull from these CRM
- Events: All meetings scheduled for today where attendee is a client contact
- Email Activities: All emails received in the last 24 hours from client contacts
- Tasks: All open tasks due today or overdue, assigned to the digest recipient
- Opportunities/Deals: Any deals with activity in the last 24 hours or stage changes
Step 2: Build the Digest Report
Create a report or dashboard that compiles this data.
In Salesforce:
- Create a custom report type: "Events with Contacts and Accounts"
- Add filters: Event Date = TODAY, Contact Account Type = Client
- Add columns: Event Subject, Start Time, Attendees, Account Name, Meeting Notes
- Create a second report for "Email Activities" with filter: Activity Date = YESTERDAY
- Create a third report for "Tasks" with filter: Due Date <= TODAY, Status != Completed
In HubSpot:
- Go to Reports > Create custom report
- Select "Meetings" as primary object
- Add filters: Meeting Date = Today, Contact Lifecycle Stage = Client
- Add associated objects: Contacts, Companies, Deals
- Clone report for "Emails" and "Tasks" with appropriate date filters
In Pipedrive:
- Use the built-in "Activities" report
- Filter by: Activity Type = Meeting, Due Date = Today
- Export to CSV or use Pipedrive API to pull data
Step 3: Automate Digest Generation and Delivery
Schedule the digest to send every morning at 7 AM.
Option A: Native CRM
- Go to Reports > [Your Digest Report] > Subscribe
- Set schedule: Daily at 7:00 AM
- Add recipients: All client-facing team members
- Enable "Only send if results are not empty"
Option B: Zapier Automation:
- Trigger: Schedule by Zapier (every day at 7:00 AM)
- Action 1: Salesforce/HubSpot "Find Records" (today's meetings)
- Action 2: Salesforce/HubSpot "Find Records" (yesterday's emails)
- Action 3: Salesforce/HubSpot "Find Records" (today's tasks)
- Action 4: Formatter by Zapier (compile into HTML table)
- Action 5: Email by Zapier (send formatted digest)
Option C: Custom Script (Python + CRM
# Pseudo-code for daily digest script
import crm_api, email_sender
from datetime import datetime, timedelta
today = datetime.now().date()
yesterday = today - timedelta(days=1)
meetings = crm_api.get_events(date=today, contact_type='Client')
emails = crm_api.get_emails(date=yesterday, contact_type='Client')
tasks = crm_api.get_tasks(due_date=today, status='Open')
digest_html = generate_html_template(meetings, emails, tasks)
email_sender.send(to='team@yourfirm.com', subject=f'Client Digest - {today}', body=digest_html)
Step 4: Optimize Digest Format for Scannability
Structure the email for quick consumption.
Recommended Format:
Subject: Client Digest - [Date]
TODAY'S MEETINGS (3)
9:00 AM - Acme Corp Strategy Review
Attendees: John Smith (Acme), Sarah Johnson (Your Firm)
Agenda: Q4 planning, budget review
Last Contact: Email 2 days ago
11:30 AM - Beta Industries Check-In
[Details]
2:00 PM - Gamma LLC Project Kickoff
[Details]
---
OVERNIGHT CLIENT EMAILS (5)
[Client Name] - [Email Subject] - [Time Received]
Preview: [First 100 characters]
Link: [CRM Record URL]
---
OPEN TASKS DUE TODAY (2)
- Send proposal to Acme Corp (Assigned to: Sarah)
- Follow up on Beta contract (Assigned to: Mike)
---
DEALS WITH RECENT ACTIVITY (1)
- Gamma LLC - Implementation Project ($50K) - Stage changed to "Negotiation"
Formatting Tips:
- Use bold headers for each section
- Include direct links to CRMrecordsCRMClick to read the full definition in our AI & Automation Glossary.
- Limit email previews to 100 characters
- Sort meetings chronologically, emails by priority (VIP clients first)
- Add a "Reply to this email to add notes" feature that logs responses to CRMCRMClick to read the full definition in our AI & Automation Glossary.
Implementation Checklist
Week 1: Email Logging
- [ ] Set up BCC forwarding rules in email clients
- [ ] Configure CRMemail ingestionCRMClick to read the full definition in our AI & Automation Glossary.
- [ ] Test with 5 sample emails
- [ ] Roll out to full team
Week 2: Calendar Logging
- [ ] Connect calendars to CRMCRMClick to read the full definition in our AI & Automation Glossary.
- [ ] Define client meeting identification rules
- [ ] Test with 3 upcoming meetings
- [ ] Enable meeting prep notifications
Week 3: Daily Digest
- [ ] Build digest reports in CRMCRMClick to read the full definition in our AI & Automation Glossary.
- [ ] Set up automation (native or Zapier)
- [ ] Send test digest to 2 team members
- [ ] Refine format based on feedback
- [ ] Roll out to full team
Week 4: Optimization
- [ ] Review adoption metrics (% of emails logged, meetings synced)
- [ ] Gather team feedback
- [ ] Adjust notification settings
- [ ] Document process for new hires
Troubleshooting Common Issues
Emails not appearing in CRM
- Check BCC rule is active in email client
- Verify CRMingestion address is correctCRMClick to read the full definition in our AI & Automation Glossary.
- Confirm sender email matches a contact record
- Check CRMemail parsing logs for errorsCRMClick to read the full definition in our AI & Automation Glossary.
Meetings syncing incorrectly:
- Review calendar sync settings (two-way vs. one-way)
- Check meeting identification rules (too broad or too narrow)
- Verify attendee email addresses match CRMcontactsCRMClick to read the full definition in our AI & Automation Glossary.
- Disable sync for personal calendars if needed
Daily digest not sending:
- Check scheduled report/automation is active
- Verify recipient email addresses are correct
- Confirm reports contain data (empty reports may not send)
- Review automation logs for errors
Team not using the system:
- Reduce notification frequency (daily digest only, not real-time)
- Add digest to existing morning routine (send at same time as other reports)
- Show time savings: "This digest replaces 30 minutes of CRMchecking"CRMClick to read the full definition in our AI & Automation Glossary.
- Make it optional for 2 weeks, then mandatory once proven valuable

Reviewed by Revenue Institute
This guide is actively maintained and reviewed by the implementation experts at Revenue Institute. As the creators of The AI Workforce Playbook, we test and deploy these exact frameworks for professional services firms scaling without new headcount.
Revenue Institute
Need help turning this guide into reality? Revenue Institute builds and implements the AI workforce for professional services firms.