How many call center agents do I need is a floor question wearing a media question's clothes. The order can offer more calls than the people at the desks can hold. When that happens, the extra calls do not become extra sales. They become waits, hangups, and a report that looks busy because the transfers connected. Size the buy to the roster you have this week. Then change one thing.
This page is about staffing, hours, and concurrency for pay-per-call buying. It is not a workforce study, and it does not use RidgeRise results. Any arithmetic below is a labeled illustration so the relationships are visible. It is not a benchmark, a quote, or a volume we have seen.
What actually drives the headcount
Three numbers do most of the work. How many calls you expect in an hour. How long a handled call takes, including the notes after the caller hangs up. How many of those calls you are willing to miss. A fourth number is the hours. A team that answers from 9 to 5 cannot support a buy that runs until 9 at night, no matter how elegant the morning math is.
Handle time is the piece desks undercount. The talk is only part of it. The disposition, the application, and the breath before the next call are part of it. If you staff to the talk time alone, you will look short by midmorning. Write the whole handle time the way the floor really works, not the way the happy path looks in training.
Hours are a filter, not a slogan. If the licensed person leaves at 6, the campaign should stop offering new calls at 6, or earlier if the last calls still need to be wrapped. Buying the evening and answering in the morning is a voicemail plan. What pay-per-call marketing is makes the same point from the buying side: bad hours burn the budget on calls the team cannot take. Staffing is how you stop agreeing to those hours.
Erlang C, without pretending it is magic
Erlang C is a standard way to estimate how many agents you need if calls arrive somewhat randomly, handle times vary, and you care about the chance a caller waits. The inputs are the ones above: calls in a period, average handle time, and the wait you will tolerate. The output is a headcount for that period, not for the year. It assumes the calls are similar and the agents are available to take them. A licensed Medicare conversation and a 90-second wrong-number are not similar. Split them before you run the math, or the formula will staff a blend that does not exist.
You do not need a vendor's calculator to see the shape. More calls in the same hour, with the same handle time, need more people if you want the same wait. A longer handle time needs more people for the same number of calls. A tighter wait needs more people than a plan that lets callers sit. Shrinkage is the part the formula forgets if you let it: breaks, meetings, and the person who is in the building but not ready. If you staff the Erlang number with no shrinkage, you staffed the fantasy roster.
Here is an illustration, not a result. Suppose one hour brings 30 calls, and a handled call takes 10 minutes, so those calls are 300 minutes of work. One person has 60 minutes. Five people have 300 minutes. That is the work, with zero room for a random clump of calls at 10:12. Erlang C exists because the clump happens. Five people may still leave someone waiting. Six may be the number that keeps the wait inside what you promised. Change the 30 or the 10 minutes and the illustration moves. Do not paste those figures into an order.

The concurrency cap is the buy-side version of the roster
A concurrency cap is how many conversations you are willing to have in progress at once. It should not be higher than the people who can actually take a call, after you account for who is already talking and who is wrapping up. If three agents are on the floor and two are mid-call, a cap of ten is not ambition. It is a queue you did not staff.
Set the cap from the roster, then tell the campaign. When the cap is hit, the next call should not be forced onto a hold the caller did not agree to. Leaving the cap off because "we might add someone at lunch" is how a Monday spike lands on two people. The report will show connections. The callers will show you the wait. Call quality beyond duration is what to read when the duration looks fine and the dispositions do not. A cap that is too high creates that pattern.
Home services make the same mistake around weather. A storm does not hire setters. HVAC, roofing, and solar seasonality is the calendar version: raise or lower what you buy to match the board, and pull back when the spike ends. Insurance and legal floors have their own spikes. The cap is still the roster, not the forecast.
What happens when the answer rate drops
Answer rate is the share of calls a person actually picked up. When it drops, you are paying to reach a greeting, a queue, or a hangup, depending on how the path is built. A call you do not answer is not a conversation your agent can place. Whether it is billable depends on the written rules: duration, connection, and disposition. Those rules should be in the order before you argue about them. We will not invent a billable definition here.
The operational fact is enough. If answer rate falls because the cap is above the roster, fix the cap or add a person. Do not "fix" it by buying more calls. More calls into a full floor make the answer rate worse. If answer rate falls because the hours in the buy do not match the hours on the schedule, change the hours. If it falls because handle time grew, the old headcount is now short. Recalculate. Do not blame the media until the floor math is current.
On a RidgeRise order, a live transfer is a call from a TV ad, a warm transfer is a call generated by digital ads, and a cold transfer is a call where someone reached back out to the client. A television burst can clump in a way a steady digital buy does not. Staff the clump, or cap it. A return call may take longer because the person already has a story. Handle time is not one number for every label. Split the report by source before you decide the whole floor is slow.
Schedules and ads have to be the same document. If paid search runs on Saturday and the floor does not, Saturday is not "extra demand." It is a buy you did not staff. Turn the ads off or put a person on. The same is true of a shared campaign. Shared means another buyer may be talking to the same shopper. Your handle time can grow because the caller is comparing you to a conversation they just had. Exclusive means you are the only one, and the caller may stay longer because they are not in a hurry to call the next agency. Do not staff both labels with one handle-time guess.
Write the cap in the same units the floor uses. If supervisors think in "people on phones" and the order thinks in "calls per day," you will talk past each other. Translate the day into the busy hour before you sign. The busy hour is what breaks a floor, not the average across a quiet evening. A cap set on the average will be too high at 10 a.m. and pointless at 8 p.m.
A concurrency cap also protects the people, not only the invoice. A floor that never catches its breath writes worse notes and misses the product check. That shows up later as disputes, not as a staffing line. If the only way to "hit the number" is a cap the roster cannot hold, the number is wrong. Lower it. The test is there to find the number the floor can repeat tomorrow, not the number that looks good for an hour.
How to raise the cap after a test
A test is a small order with the rules already written: states, hours, product, and the cap. Run it long enough to hear real calls and short enough that you have not bet the month on a roster you have not watched. Look at answer rate, handle time, and whether the dispositions match the product. If agents are declining transfers because they are already talking, the cap is high or the roster is short. If they are waiting, you may have room. Room is not a reason to triple the cap. Raise one step, on one product, in the hours you already cover.
Campaigns here are tracked in Ringba, Retreaver, or TrackDrive. Ask which one shows concurrency, duration, and source together. A blended daily total hides the hour that broke the floor. Pause that hour or add a person to it. Leave the hours that answered alone.
We do not print how many agents a vertical "needs." Your license, your handle time, and your hours are the inputs. When you know them, start a test campaign sized to your floor. Bring the hours you answer and how many conversations the desk can hold at once. RidgeRise buys the media and adds a screened publisher layer, with quality monitoring on both. A qualified call is the start of your process. It is not a policy, and it is not a reason to outrun the people who have to take it.


