The Call Center Doctors Logo Get Started

Outbound roofing call QA scorecard

Most call QA scorecards are a manager's intuition typed into a table. This one is not. Every line on it is a behaviour that was actually present in the calls that booked an inspection, taken from a corpus of transcribed outbound roofing appointment-setting calls, and the measurement sits printed underneath the line so a reviewer can see what they are scoring against rather than take it on trust.

It is one page. It scores Yes, No or N-A and nothing else. Take it, print it, put it next to a recording, and you can review a call this afternoon.

Download the CSV

No signup, no email wall, nothing to fill in first. The CSV opens straight into a spreadsheet with a column per call.

How to score it

There are no point weights, and their absence is deliberate rather than a shortcut. A weight is an assertion about how much a behaviour contributed to the outcome, and nothing we measured supports one: what the corpus shows is what was PRESENT in calls that booked, not what caused them to book. Inventing weights would make the sheet look more precise and be less true, so every line is equal and the result is a count.

Score it as the number of Yes marks over the number of lines that applied, and write that pair down rather than a percentage. Two reviewers who mark different lines N-A produce percentages that look comparable and are not, which is the failure mode of every weighted sheet we have been shown.

Where these lines come from

One fixed corpus, entirely outbound, transcribed in full. The scorecard states the shares it was drawn from so a reader can weigh them rather than accept them, and the two denominators below travel together everywhere on this site because either one alone misleads: the per-contact figure flatters, since most dials never reach anybody, and the per-dial figure charges the caller for disconnected numbers.

10,794 outbound roofing appointment-setting calls placed Feb-Mar 2026, every one transcribed and analysed (10,848 transcribed in total; 54 belonged to a non-roofing plumbing list and were removed)
Size of the ccdocs outbound roofing call corpus the first-party figures are measured onapps/airoofing/files/10k_agent_scorecards.md (period, per-agent totals), apps/airoofing/files/10k_winning_vs_losing.md (roofing-filtered totals), apps/airoofing/roadmap.md (unfiltered totals), 2026-Q1
3.6% of contacted homeowners booked an inspection (210 of 5,772 contact calls); 2.0% of all dials did (212 of 10,794 calls)
ccdocs appointment-set rate on outbound roofing appointment-setting callsapps/airoofing/files/10k_agent_scorecards.md (per-agent contact and appointment counts, summed over the 11 published scorecards) plus apps/airoofing/files/10k_winning_vs_losing.md and apps/airoofing/roadmap.md (corpus totals: 10,794 roofing calls, 212 booked), 2026-Q1

Nothing refreshes this window and nothing in it describes an inbound call. It is a two-month slice of one call floor, which is what makes it worth publishing and also what limits how far it travels: read the lines below as a well-evidenced starting sheet you then tune against your own recordings, not as a law of the trade.

Did the conversation actually start

One line, and it is first because it decides whether the rest of the sheet is worth filling in. A call that ended before the homeowner said anything is not a call that was handled badly; it is a call that never happened, and scoring it against the lines below tells the reviewer nothing about the setter.

  1. The call ran past sixty seconds.

    Yes No N-A

    Of the 212 booked roofing calls in the corpus, 209 ran past 60 seconds. In a 60-call random sample of calls that ended "not interested", 5 did.

Read this before you use the section

Read this as a description of what a booked call looks like, never as an instruction. A call runs long because it is going well; staying on the phone does not cause a booking, and the corpus cannot answer how often a long call books because that needs the duration profile of the dispositions no source document enumerates.

209 of the 212 booked roofing calls (98.6%) ran past 60 seconds. In a 60-call random sample of calls that ended "not interested", 5 (8.3%) did.
Booked roofing calls almost never end inside the first minuteapps/airoofing/files/10k_winning_vs_losing.md, section 6 duration-distribution table (buckets 0-15s, 15-30s and 30-60s), 2026-Q1

What was present in the call

Seven lines, in the order the corpus ranks them. Each one is a thing that was PRESENT in calls that booked an inspection, listed with the share of booked calls it appeared in. They are ordered by that share so a reviewer coaching a new setter knows which habit to build first, and so nobody mistakes the last line for the least important skill in the trade.

  1. The setter confirmed the property address back to the homeowner.

    Yes No N-A

    Present in 80.7% of the 212 booked calls.

  2. Insurance was mentioned.

    Yes No N-A

    Present in 52.8% of the 212 booked calls.

  3. The inspection was described as free.

    Yes No N-A

    The word "free" appears in 52.4% of the 212 booked calls.

  4. The homeowner's own street was named.

    Yes No N-A

    Present in 38.7% of the 212 booked calls.

  5. Weather damage in the area was referenced.

    Yes No N-A

    Present in 27.8% of the 212 booked calls.

  6. A drone inspection was mentioned.

    Yes No N-A

    Present in 17.9% of the 212 booked calls.

  7. The setter paid the homeowner a compliment about the house.

    Yes No N-A

    Present in 9.9% of the 212 booked calls.

Read this before you use the section

These are shares of the 212 booked calls and nothing else. They are DESCRIPTIVE, not causal: a longer successful conversation simply has more room in it to mention more things. No lift, no multiple and no losing-side share is published here, because the two source documents disagree about the losing side and the disagreement is not resolvable from any stated denominator.

Of the 212 booked roofing calls, 80.7% include an address confirmation, 52.8% mention insurance, 52.4% say the word "free", 38.7% name the street the homeowner lives on, 27.8% reference weather damage, 17.9% mention a drone inspection and 9.9% pay the homeowner a compliment about the house
What a roofing call that booked actually containedapps/airoofing/files/10k_winning_vs_losing.md, section 1 "What Winners Do Differently", 2026-Q1

Was the objection met

Five lines, one per objection type, in the rank order the corpus puts them in. Mark N-A for any objection the homeowner did not raise; a setter cannot be scored on resistance that never arrived. What a reviewer is looking for on each line is whether the objection was answered on its own terms and the conversation continued, not whether the call was saved.

  1. A cost or price objection was met.

    Yes No N-A

    The most common type: 234 of the 950 objections logged across 635 substantive conversations.

  2. A flat "not interested" was met.

    Yes No N-A

    Second by count: 200 of the 950. Of those 200, 21 occurred in a call that booked anyway.

  3. A "there is no damage" objection was met.

    Yes No N-A

    Third by count: 110 of the 950.

  4. A "my roof is fine" or new-roof objection was met.

    Yes No N-A

    Fourth by count: 105 of the 950.

  5. A "not right now" objection was met.

    Yes No N-A

    Fifth by count: 98 of the 950.

Read this before you use the section

Counts and rank order only. The set these were counted in is enriched by construction -- booked calls are about a third of it against a fiftieth of the corpus, roughly 17x -- so no rate derived from it describes a population, and the book-rate column that exists alongside these counts is deliberately not published anywhere on this site. An objection is the normal content of a real conversation rather than the signature of a lost one.

In a 635-call set of substantive roofing conversations, 82% of the calls that booked and 78% of the calls that were lost contained at least one homeowner objection
An objection is the normal content of a real roofing conversation, not the signature of a lost oneapps/airoofing/files/10k_objection_map.md, "Key Finding", 2026-Q1
Across 635 substantive roofing conversations, 950 objections were logged across 20 types, an average of 1.50 per conversation. The five most common were cost or price (234), "not interested" (200), "no damage" (110), "my roof is fine" or a new roof (105), and "not right now" (98). Of the 200 "not interested" objections, 21 occurred in a call that booked anyway.
What roofing homeowners actually object to, rankedapps/airoofing/files/10k_objection_map.md, "Objection Types Ranked by Frequency", 2026-Q1

Why score at all

Because the person on the phone is the widest source of variance anybody has been able to measure on this work, and it is not close. On the same campaigns, the same lists and the same hours, the appointment rate per contacted homeowner ran more than four times wider between the best and the worst of the agents with a published scorecard than the blended figure suggests. A dialler cannot move that. A script only moves it once. Review is what moves it repeatedly, which is the only argument for spending an hour a week on a sheet like this one.

Across the 11 agents with a published scorecard, the appointment rate per contacted homeowner ranges from 1.2% (2 of 168 contacts) to 5.3% (43 of 806), a 4.5x spread; the blended rate is 3.6% (210 of 5,772)
How much the individual agent moves the outcome on identical campaigns and identical listsapps/airoofing/files/10k_agent_scorecards.md, the 11 per-agent scorecards, 2026-Q1

No agent, campaign or client is named anywhere in that measurement, here or in the source documents we publish from. The spread is what transfers between floors; the names do not, and they are not ours to publish.

What this scorecard cannot tell you

A QA sheet that oversells itself gets filled in once and then ignored, so here is the whole of what it does not do. It is not a prediction. Nothing on it says that adding a behaviour to a call makes that call book -- the shares describe calls that had already booked, and a longer successful conversation simply has more room in it to mention more things. Treat a low score as a prompt to listen to the recording again, never as a verdict the number earned on its own.

It is also silent about the half of the job that happens after the appointment is set. The corpus records what was said on the phone; it holds nothing about whether the homeowner was there when the truck arrived, and a scorecard that pretends otherwise would be measuring the easy half and calling it the outcome. If you only have room for one number, make it the share of set appointments that turned into an inspection that happened, and keep this sheet as the thing that explains the number rather than as the number.

Finally, it is outbound. Every line was measured on cold and storm-list dialling, and none of it describes how a homeowner behaves when they were the one who picked up the phone. For that side of the floor the questions are different and so are the measurements.

Want us to score your calls instead?

Send us a week of recordings and we will run this sheet across them, then tell you plainly which lines your floor is missing and which ones do not apply to your market.

Give us either an email or a phone number.

If you are still sizing the problem rather than reviewing calls, the speed-to-lead curve and the call center cost estimator are the two tools that come before this one.

Bring us a recording and we will score it with you

Twenty minutes, one call, this sheet open on the screen. You will hear where the conversation actually turned, which is a different thing from where you expected it to.

Book a Free Consultation
Call Now Book a Call