Skip to content

Call Tracking Trigger

Overview

The Call Tracking Trigger provides comprehensive call lifecycle tracking, capturing multiple call states from ringing to completion. This enables advanced call analytics, detailed logging, and sophisticated automation based on call progression and outcomes.

When to use this trigger:

  • Track complete call lifecycle (ringing, answered, ended)
  • Analyze missed calls vs answered calls
  • Calculate accurate call duration and wait times
  • Monitor call abandonment rates
  • Advanced call center analytics
  • Multi-stage call-based automation

Difference from Call Connect Trigger:

  • Call Connect: Simple trigger when call connects
  • Call Tracking: Tracks multiple call states with detailed analytics

Quick Start

  1. Connect your call tracking system to BaseCloud
  2. Create a new workflow
  3. Add a Call Tracking Trigger as the first task
  4. Select which call states to monitor (ringing, answered, completed, missed)
  5. Configure tracking rules
  6. Save and enable the workflow

[SCREENSHOT NEEDED: Call Tracking Trigger task panel showing call state options]

Call States

Ringing

Triggered when an incoming call starts ringing (before answer).

Use Cases: - Log all call attempts (even if not answered) - Track call volume metrics - Prepare CRM for potential conversation

Answered

Triggered when call is answered/connected.

Use Cases: - Same as Call Connect Trigger - Start call timer - Notify relevant team members

Completed

Triggered when call ends (hung up).

Use Cases: - Calculate final call duration - Trigger post-call follow-up - Log call outcome - Send surveys

Missed

Triggered when call rings but isn't answered.

Use Cases: - Send "Sorry we missed you" SMS - Create callback task for team - Log missed call to CRM - Alert on-call staff

Busy

Triggered when caller receives busy signal.

Use Cases: - Alert that lines are overloaded - Log for capacity planning

Voicemail

Triggered when call goes to voicemail.

Use Cases: - Transcribe voicemail (if available) - Alert team of voicemail - Send acknowledgment to caller

Output Fields

The Call Tracking Trigger outputs detailed call data depending on the state:

Call Identification

Field Description Example Value
task_[ID]_call_id Unique call identifier call_abc123xyz
task_[ID]_caller_number Incoming phone number +27123456789
task_[ID]_called_number Your number called +27111111111
task_[ID]_call_state Current state ringing, answered, completed, missed

Timing Information

Field Description Example Value
task_[ID]_ring_start When ringing started 2024-02-08 14:30:00
task_[ID]_answered_at When call was answered 2024-02-08 14:30:15
task_[ID]_ended_at When call ended 2024-02-08 14:35:42
task_[ID]_ring_duration Seconds before answer 15
task_[ID]_call_duration Total call length in seconds 327
task_[ID]_wait_time Time waiting in queue (if applicable) 8

Call Details

Field Description Example Value
task_[ID]_agent_name Who answered the call John Smith
task_[ID]_agent_email Agent's email john@company.com
task_[ID]_disposition Call outcome completed, no-answer, busy
task_[ID]_recording_url Call recording (if enabled) https://...
task_[ID]_caller_name From caller ID Jane Doe
task_[ID]_direction Inbound or outbound inbound

Tracking Data

Field Description Example Value
task_[ID]_tracking_number Which tracking number was called +27111111111
task_[ID]_campaign_source Marketing campaign Google Ads - Spring 2024
task_[ID]_landing_page Page visitor was on when calling https://example.com/pricing
task_[ID]_referrer Where visitor came from google.com

Real-World Examples

Example 1: Comprehensive Call Logging

Trigger States: Ringing, Answered, Completed

Workflow for Ringing: 1. Call Tracking Trigger - State: Ringing 2. Match to Client - Find contact 3. MySQL Query - Create call attempt log

Workflow for Answered: 1. Call Tracking Trigger - State: Answered 2. MySQL Query - Update log with answer time 3. Edit Client - Add "In Call" status

Workflow for Completed: 1. Call Tracking Trigger - State: Completed 2. MySQL Query - Update log with end time and duration 3. Edit Client - Update last contact date 4. Delay - Wait 2 minutes 5. Email - Send follow-up email

[SCREENSHOT NEEDED: Three separate workflows for different call states]

Example 2: Missed Call Response

Trigger State: Missed

Workflow: 1. Call Tracking Trigger - State: Missed 2. Match to Client - Find existing contact 3. Edit Client - Add "Missed Call" tag 4. MySQL Query - Create callback task 5. Webhook Out - Send SMS: "Sorry we missed your call! We'll call you back shortly." 6. Email - Alert available agent to call back

Example 3: Call Quality Monitoring

Trigger State: Completed

Workflow: 1. Call Tracking Trigger - State: Completed 2. If Task - Check call duration - Less than 30 seconds: Tag as "Quick Hang-up" (potential issue) - 30-120 seconds: Normal call - Over 120 seconds: Tag as "Long Call" (complex issue?) 3. If Task - For long calls: - Email - Notify supervisor for quality review 4. MySQL Query - Log metrics for reporting

Example 4: Campaign Attribution Tracking

Trigger State: Answered

Workflow: 1. Call Tracking Trigger - State: Answered 2. Match to Client - Find existing contact 3. Edit Client - Add campaign tag from campaign_source 4. Google Sheets - Log to campaign tracking sheet with: - Date/time - Caller number - Campaign source - Landing page - Call duration (pull from completed state later) 5. If Task - Check if first call from this campaign - First call: Tag as "New Lead - [Campaign Name]"

Example 5: Post-Call Survey

Trigger State: Completed

Workflow: 1. Call Tracking Trigger - State: Completed 2. If Task - Check call duration > 60 seconds 3. Match to Client - Find contact 4. Delay - Wait 5 minutes 5. Webhook Out - Send SMS with survey link: "Thanks for calling! Rate your experience: [link]"

Multi-State Workflows

For advanced tracking, create separate workflows for each state:

Pattern: Track Complete Call Journey

Workflow 1 - Call Ringing: - Log initial call attempt - Prepare CRM record - Start timer

Workflow 2 - Call Answered: - Update log with answer time - Calculate ring duration - Alert agent's manager (if VIP)

Workflow 3 - Call Completed: - Calculate final duration - Log call outcome - Trigger follow-up actions - Send survey

Workflow 4 - Call Missed: - Alert on-call team - Send apology SMS - Create callback task

Connecting Call Tracking Systems

Compatible Systems

Most call tracking platforms that support webhooks:

  • CallRail
  • CallTrackingMetrics
  • DialogTech
  • Marchex
  • Custom call center software

Setup Steps

  1. Access your call tracking platform
  2. Navigate to Webhooks or API settings
  3. Create webhook for call events:
  4. call.ringing
  5. call.answered
  6. call.completed
  7. call.missed
  8. Use the webhook URL provided by BaseCloud Call Tracking Trigger
  9. Map call data fields to standard format
  10. Test with a real call

Call Analytics

Calculating Key Metrics

Use Call Tracking data to calculate important metrics:

Answer Rate:

const totalRinging = /* count of ringing events */;
const totalAnswered = /* count of answered events */;
const answerRate = (totalAnswered / totalRinging * 100).toFixed(2);

Average Call Duration:

const durations = /* array of call_duration values */;
const avgDuration = durations.reduce((a,b) => a+b, 0) / durations.length;

Missed Call Rate:

const totalCalls = totalRinging;
const missedCalls = /* count of missed events */;
const missedRate = (missedCalls / totalCalls * 100).toFixed(2);

Building Analytics Dashboard

  1. Schedule Trigger - Daily at 9 AM
  2. MySQL Query - Get yesterday's call data
  3. Code Task - Calculate metrics
  4. Google Sheets - Update dashboard spreadsheet
  5. Email - Send daily report to management

Best Practices

✅ Do's

  • Track all states: Monitor ringing, answered, completed, and missed for complete picture
  • Use unique workflows per state: Keep logic clean and maintainable
  • Log everything: Comprehensive logs enable better analysis
  • Calculate metrics: Use data for continuous improvement
  • Follow up on missed calls: Always close the loop
  • Attribute calls to campaigns: Track marketing ROI
  • Set up alerts: Notify team of important call events
  • Analyze patterns: Look for trends in call times, duration, outcomes

❌ Don'ts

  • Don't ignore missed calls: They're potential lost revenue
  • Don't skip state tracking: Track complete journey, not just answered
  • Don't forget privacy: Comply with call recording regulations
  • Don't neglect call quality: Monitor duration and outcomes
  • Don't lose attribution data: Always capture campaign source

Troubleshooting

Not All Call States Being Captured

Possible Causes: - Call system not sending all state webhooks - Workflows not created for all states - Webhook configuration incomplete

Solutions: 1. Verify your call system sends webhooks for all states 2. Create separate workflows for each state you need 3. Check webhook logs in your call system 4. Test with real calls and monitor execution history

Call Duration Not Calculating

Possible Causes: - Only tracking one state (need both answered and completed) - Time format mismatch - Missing timestamp data

Solutions: 1. Ensure you have workflows for both "Answered" and "Completed" states 2. Use the same call_id to link states together 3. Store answered_at time and subtract from ended_at time

Duplicate Call Tracking

Possible Causes: - Call system sending multiple webhooks for same event - Both Call Connect and Call Tracking triggers active

Solutions: 1. Use only Call Tracking trigger for comprehensive tracking 2. Disable Call Connect trigger if using Call Tracking 3. Add deduplication logic using call_id

Missing Campaign Attribution

Possible Causes: - Call tracking system not passing campaign data - Dynamic number insertion not configured - Website tracking not set up

Solutions: 1. Configure dynamic number insertion on your website 2. Ensure campaign parameters passed to call tracking system 3. Test by clicking through different campaigns

Advanced Features

Call Outcome Tracking

After call ends, have agent log outcome:

  1. Call Tracking Trigger - State: Completed
  2. Delay - Wait for agent to log outcome (or webhook from CRM)
  3. MySQL Query - Update call record with outcome
  4. If Task - Route based on outcome:
  5. Sale: Create invoice workflow
  6. Follow-up needed: Create task
  7. Not interested: Update lead score

Call Recording Analysis

Process recordings automatically:

  1. Call Tracking Trigger - State: Completed
  2. Delay - Wait 60 seconds (recording processing)
  3. Webhook Out - Download recording from recording_url
  4. Speech to Text - Transcribe
  5. AI Prompt - Analyze:
  6. Was customer satisfied?
  7. What was discussed?
  8. Any action items?
  9. MySQL Query - Store analysis
  10. If Task - If issues detected:
  11. Alert supervisor

Intelligent Callback Scheduling

For missed calls, schedule callbacks intelligently:

  1. Call Tracking Trigger - State: Missed
  2. Code Task - Check caller's timezone and business hours
  3. MySQL Query - Create callback task for appropriate time
  4. Webhook Out - Send SMS: "We'll call you back at [time]"

Queue Time Monitoring

Alert if wait times too long:

  1. Call Tracking Trigger - State: Answered
  2. If Task - Check wait_time > 60 seconds
  3. Webhook Out - Alert managers via Slack
  4. MySQL Query - Log long wait for analysis

Frequently Asked Questions

What's the difference between Call Connect and Call Tracking triggers?

Call Connect: Simple, triggers once when call connects. Good for basic "call happened" automation.

Call Tracking: Advanced, triggers on multiple call states. Better for analytics and complex workflows.

Can I combine both triggers?

Not recommended. Use Call Tracking as it provides all the functionality of Call Connect plus more.

Use the call_id field, which remains consistent across all states of a single call. Store it and use it to update records.

What if my call system doesn't provide campaign attribution?

You'll need to implement dynamic number insertion on your website, or use a call tracking platform that provides this feature (CallRail, CallTrackingMetrics, etc.).

Can I track outbound calls?

Yes, if your phone system sends webhooks for outbound calls. Configure the same way as inbound.

How accurate are the timing measurements?

Timing depends on when your phone system sends webhooks. Usually accurate within 1-2 seconds.

Can I filter by agent who answered?

Yes, use the agent_name or agent_email field in an If task to route based on who answered.

What if I need to track calls from multiple phone systems?

Create separate Call Tracking Triggers for each system, or use a unified webhook that normalizes data from all systems.

How long are call recordings available?

This depends on your phone system's retention policy. Download and process them as soon as possible after the call ends.


Next Steps: - Call Connect Trigger - Simple call connection trigger - Match to Client Task - Link calls to contacts - Speech to Text Task - Transcribe call recordings