@vicistack/contact-rate-optimization
v1.0.0
Published
Contact Rate Optimization: The Math Behind Getting More Humans on the Phone — ViciStack call center engineering guide
Maintainers
Readme
Contact Rate Optimization: The Math Behind Getting More Humans on the Phone
Last updated: March 2026 | Reading time: ~25 minutes Here is the ugly truth about outbound dialing in 2026: most of your calls are not reaching humans. The average outbound connect rate across industries hovers around 16-20%. That means for every 100 calls your dialer places, 80+ hit voicemail, dead air, disconnected numbers, or the back button on a "Spam Likely" screen. Your agents sit in READY status, burning payroll, while your dialer churns through a list that is mostly ghosts. But here is the thing that drives me crazy about how most operations approach this: they treat contact rate like weather. Something that happens to them. They look at the daily report, see 14% contact rate, shrug, and ask for more leads. Contact rate is not weather. It is engineering. Every component -- your caller ID reputation, your dial timing, your attempt cadence, your STIR/SHAKEN attestation level, your DID rotation strategy, your multi-channel layering -- is a variable you can measure and tune. And the math is not complicated. It just requires actually doing the work. This post walks through each variable, the data behind it, and the specific configuration changes in VICIdial that move the numbers. --- ## What Contact Rate Actually Means (And Why Most People Measure It Wrong) Before we get into optimization, we need to agree on what we are measuring. The industry uses "contact rate," "connect rate," "answer rate," and "right-party contact rate" almost interchangeably, and they are not the same thing. Raw Answer Rate: The percentage of dials that result in a human picking up the phone. This includes wrong numbers, gatekeepers, people who immediately hang up, and anyone else who answers. If your AMD is misconfigured, it also includes answering machines that got misclassified as humans. Typical range: 15-28%. Right-Party Contact Rate (RPCR): The percentage of dials that reach the actual person you intended to call. This is the number that matters for sales campaigns. If you are calling John Smith about his solar quote and his wife answers, that is not a right-party contact. Typical range: 8-18%. Qualified Contact Rate: The percentage of dials that reach a right-party contact who stays on the phone long enough to have a conversation (usually defined as 30+ seconds of talk time). This is what actually predicts conversion outcomes. Typical range: 5-12%. Most operations only look at raw answer rate because it is the easiest to pull from VICIdial's real-time reports. But raw answer rate is misleading. A campaign showing 22% answer rate might only have a 9% RPCR and a 6% qualified contact rate. Those are very different operational realities. The formula that actually matters: Conversions = Dials × Answer Rate × RPC Rate × Qualification Rate × Close Rate If you have 10 agents doing 200 dials/hour each at a 15% answer rate, 60% RPC rate, 80% qualification rate, and 12% close rate: 2,000 dials × 0.15 × 0.60 × 0.80 × 0.12 = 17.3 conversions per hour Now push the answer rate from 15% to 22% (which is entirely achievable with the techniques in this post): 2,000 dials × 0.22 × 0.60 × 0.80 × 0.12 = 25.3 conversions per hour That is 46% more conversions from the same number of agents, the same list, the same script. The only thing that changed was getting more humans on the phone. At $200 revenue per conversion, that is $1,600 more per hour, $12,800 per 8-hour shift. From the same payroll. This is why contact rate optimization is the highest-leverage thing you can do in an outbound operation. Nothing else comes close. --- ## Contact Rate Benchmarks by Vertical Contact rates vary wildly by industry, and understanding where your vertical sits is essential before you start tuning. Here are the ranges we see across ViciStack deployments and industry data from 2025-2026: | Vertical | Raw Answer Rate | Right-Party Contact Rate | Notes | |---|---|---|---| | Insurance (P&C) | 18-26% | 11-16% | Higher in storm seasons, lower in Q1 | | Insurance (Health/ACA) | 14-22% | 8-14% | Heavily seasonal around OEP/SEP | | Solar | 12-20% | 7-13% | Varies dramatically by lead source quality | | Home Improvement | 16-24% | 10-15% | Homeowner lists tend to pick up more | | Debt Settlement | 10-18% | 6-12% | Financial distress leads screen heavily | | Mortgage/Refi | 13-21% | 8-14% | Rate environment dependent | | Final Expense | 20-28% | 13-19% | Older demographic answers the phone more | | Political | 8-15% | 5-10% | Massive list waste, lowest RPCR | | B2B (SMB) | 15-22% | 9-15% | Gatekeepers filter hard | | B2B (Enterprise) | 8-14% | 4-9% | Direct dials help dramatically | A few things jump out from this data. Final expense consistently has the highest contact rates because the target demographic -- seniors 50-85 -- still answers unknown calls at much higher rates than younger demographics. If you are running final expense at below 20% raw answer rate, something is wrong with your caller ID or your list. Political campaigns sit at the bottom because the lists are massive, untargeted voter files. You are calling millions of people who did not opt in to anything. The math works because the volume is so high and the per-contact cost tolerance is different. Solar is the most volatile vertical. A list of aged internet leads might connect at 8%. A fresh inbound web form lead dialed within 60 seconds might connect at 65%+. Same vertical, wildly different outcomes based on lead freshness and source. --- ## Variable 1: Caller ID Reputation This is the single biggest factor in whether your calls get answered in 2026. It dwarfs everything else. When your outbound DID shows up as "Spam Likely" or "Scam Probable" on a prospect's phone, your answer rate drops 20-50% overnight. We have seen operations go from 24% answer rate to 9% in 48 hours because their caller IDs got flagged. At scale, that is hundreds of thousands of dollars in lost revenue before anyone notices. ### How Caller IDs Get Flagged The three major US carriers run analytics engines that score inbound calls: - AT&T uses Hiya to analyze call patterns, volume, and consumer feedback - Verizon uses TNS Call Guardian - T-Mobile uses Scam Shield with multiple data feeds These engines look at: 1. Call volume per number per hour. Anything over 50-100 calls/day from a single DID starts raising flags. Over 150/day and you are almost certainly getting labeled. 2. Short call duration patterns. If most of your calls last under 5 seconds (people hanging up immediately), that signals robocalling behavior to the analytics engines. 3. Consumer complaints. When someone marks your call as spam in their phone app, that feeds directly into the carrier databases. It only takes a handful of complaints to trigger a label. 4. STIR/SHAKEN attestation level. Calls with C-level attestation (gateway, where the carrier cannot verify who you are) get the harshest treatment. A-level attestation (full verification) gives you significant benefit of the doubt. ### The STIR/SHAKEN Factor STIR/SHAKEN is the caller authentication framework mandated by the FCC. Every call gets signed with an attestation level: - A (Full): Your carrier knows you, verified your identity (KYC), and confirmed you own or are authorized to use the calling number. This is what you want. - B (Partial): Your carrier knows you but cannot verify you control the specific number. Common with some SIP trunking setups. - C (Gateway): Your carrier does not know who you are. This is a death sentence for answer rates. If your SIP trunk provider is giving you B or C attestation, you are leaving money on the table before you even start dialing. Ask your carrier what attestation level they sign your calls with. If they cannot give you a clear answer, find a carrier that can. In VICIdial, you can verify this by checking with your carrier directly -- there is no in-platform indicator for attestation level. But you can see the effects in your answer rate metrics by DID. ### DID Rotation Strategy The math on DID rotation is straightforward: DIDs needed = (total daily dials) / (max calls per DID per day) If you are making 10,000 dials per day and want to keep each DID under 80 calls/day (a safe threshold for most carriers): 10,000 / 80 = 125 DIDs That is a lot of phone numbers. But the alternative is burning through fewer numbers at high volume, getting them flagged, and watching your answer rate crater. In VICIdial, you configure DID rotation through the campaign's CID Group settings: 1. Go to Admin > Caller ID Numbers and create a CID Group 2. Add your pool of DIDs to the group 3. In the campaign settings, set Use Custom CID to CID_GROUP and select your group 4. Set the CID Group Type to ROTATE for sequential rotation or RANDOM for random selection The ROTATE option cycles through DIDs in order, giving each number roughly equal usage. RANDOM is slightly better for avoiding pattern detection by carrier analytics. ### Cool-Down Periods When a DID gets flagged, it needs rest. The general rule: - Light flagging (showing up as "Spam?" on one carrier): Pull it from rotation for 14-30 days - Hard flagging (labeled "Scam Likely" across multiple carriers): 60+ days of complete inactivity to clear - Blacklisted (registered with a call-blocking database): May never fully recover; often cheaper to retire and replace Monitor your DIDs using services like Free Caller Registry, CallerID Reputation, or Numeracle. In VICIdial, track per-DID answer rates by pulling caller_code data from the logs. Any DID dropping below your baseline answer rate by more than 30% is probably flagged and needs to be pulled. --- ## Variable 2: Time of Day and Day of Week The data on this is clear and has been replicated across multiple studies. When you call matters, a lot. ### The Best Windows A 2025 analysis of 187,684 outbound calls found: - Monday 8 AM local time had the highest success rate at 30.4% - Morning hours generally (8-11 AM) outperformed afternoons across all days - Monday had the highest overall daily success rate at 24% - Tuesday came second at 22.2% - After noon, success rates dropped noticeably as people accumulated tasks and became less receptive Older studies (MIT/InsideSales, Velocify) found similar patterns with a second peak at 4-5 PM when people are wrapping up their day and more likely to answer. ### The Practical Problem Knowing that Monday morning is best is useless if you are calling a list that spans four time zones. When it is 8 AM Pacific, it is 11 AM Eastern -- you have already missed the sweet spot for your East Coast leads. In VICIdial, use Local Call Time settings to handle this: 1. In the campaign settings, set Local Call Time to define your dialing window per timezone 2. VICIdial uses the area code and prefix of the lead's phone number to determine their timezone 3. Set your local call time to start at 8:00 AM and end at 8:00 PM (or whatever your state regulations allow) in the lead's local time But more importantly, you can use Hopper Priority to front-load your best time windows. Leads in time zones where it is currently 8-11 AM should be dialed first. You can achieve this by running multiple campaigns or using list priorities to weight morning-window leads higher. ### Day-of-Week Adjustments The data says Monday and Tuesday are best, but that does not mean you should not dial on other days. It means you should allocate your best leads to Monday and Tuesday mornings and use the rest of the week for retries and lower-priority contacts. In VICIdial, you can use the Call Count Limit and Call Count Target fields in list settings to control how many attempts go out on which
About
Built by ViciStack — enterprise VoIP and call center infrastructure.
- VICIdial Hosting & Optimization
- Call Center Performance Guides
- Full Article: Contact Rate Optimization: The Math Behind Getting More Humans on the Phone
License
MIT
