Reading Your Call Log: 7 Numbers That Should Drive Pricing and Staffing
Most locksmith owners look at their call log to count calls. That is the least useful thing in it. Buried in the same data are seven numbers that should directly set your after-hours rate, your on-call rotation, your service radius, and which single price on your sheet is wrong. Here is how to compute each one, what a concerning reading looks like, and the specific decision it should change — plus an honest account of why every one of these numbers is biased by the calls you never answered.

Reading Your Call Log: 7 Numbers That Should Drive Pricing and Staffing
Almost every locksmith owner who opens a call log is doing one of two things: counting calls, or hunting for one specific conversation they half-remember. Both are fine. Neither is what the log is for.
The log is the only honest record you have of what your market actually wants, when it wants it, at what price it walks away, and how far it lives from your shop. Every other input you use to make operating decisions — a gut feeling about weekends, a competitor's advertised price, a slow week that felt like a trend — is a story. The log is evidence. As of August 2026, the practical difference between shops that price and staff deliberately and shops that price and staff by reflex is almost entirely a matter of whether anyone reads it.
This article names seven numbers. For each one: what it is, how to compute it from what you already have, what a concerning reading looks like, and — the part that matters — the specific decision it should change. Not "insight." A decision. If a metric does not end in you changing a price, a schedule, a boundary on a map, or a script, it does not belong on this list and I have left it off.
Before any of that, one uncomfortable caveat that runs underneath all seven.
The spine of this whole article: your log only knows about answered calls
Your call log is a survivor's log. It records the callers who got through. It does not record what the people who did not get through wanted, how much they would have paid, or where they lived — and those callers are not a random sample of your market. They skew toward the exact segments you most want to understand: the urgent ones, the after-hours ones, the ones calling from a parking lot at 9 PM with a dead fob and no patience.
This is survivorship bias, and it distorts every number below in a predictable direction:
- Your answer-rate-by-hour chart is the only one of the seven that measures the bias directly, which is why it is first.
- Your quote-to-book rate looks better than reality, because callers who hung up before hearing a price never enter the denominator.
- Your median distance looks shorter than reality, because the far-flung caller at 10 PM is disproportionately likely to have been the one who reached voicemail and moved on.
- Your reason-for-loss mix is missing its largest category entirely — the reason "nobody picked up" does not show up as a reason for loss. It shows up as nothing at all.
- Your after-hours share of revenue is understated, sometimes badly, because after-hours is when answer rates are worst.
So the honest sequence is: fix answering first, then measure. A shop that answers 60% of its calls and then carefully optimizes its price book off that data is tuning an instrument with a broken sensor. This is not an argument for paralysis — read the numbers now, act on the loud ones — but it is an argument for treating the first metric as a prerequisite rather than as one of seven equals. If you want the fuller version of that argument, call abandonment and how to reduce it covers the mechanics of the calls that vanish before your log ever sees them.
One more framing note before the list. Everything below assumes you can see per-call detail: timestamp, duration, outcome, and ideally a recording or transcript. If your current setup is a cell phone and a memory, start by getting the data, because none of this works from recollection.
1. Answer rate by hour of day and day of week
What it is. The share of inbound calls that were answered by a person or a receptionist — not sent to voicemail, not abandoned while ringing — broken out into a grid: 24 hours across, 7 days down.
How to compute it. For each hour-and-weekday cell, divide answered calls by total inbound calls over a trailing 60 to 90 days. Do not aggregate to a single monthly percentage. A single number hides the entire finding; the whole point is the shape.
What a concerning reading looks like. Any cell where answer rate falls below roughly 80% while call volume in that same cell is at or above your average. Cells that are both low-answer and high-volume are where your money is leaking. The classic pattern in locksmith work is a Friday and Saturday evening block, a Sunday afternoon block, and the 7 to 9 AM commuter window — all high demand, all commonly uncovered. A second concerning pattern is a mid-afternoon dip that has nothing to do with hours and everything to do with your one office person being on another call.
The decision it should change. Coverage. Specifically: which hours get a human, which hours get an on-call tech, which hours get an AI receptionist, and which hours you consciously decide to leave uncovered. This is a staffing decision with a dollar figure attached, and you can put that figure on it — run your own volume and close rate through the missed call cost calculator rather than trusting a rule of thumb. The methodology and the assumptions behind that model are laid out in the missed call cost research.
The secondary decision is speed, not just coverage. A cell can show a 95% answer rate and still be bleeding, if half of those answers came on the sixth ring after the caller had already dialed someone else on another phone. The relationship between seconds-to-answer and booked work is its own topic, covered in speed to lead.
2. Quote-to-book rate by service type
What it is. Of the calls where a price was actually stated, the share that resulted in a booked job — computed separately for each service line: car key replacement, spare key, lockout, ignition work, rekey, commercial hardware, and so on.
How to compute it. Filter to calls where a number was quoted. Group by service type. Divide booked by quoted within each group. You need the service-type tag on the call, which is why intake matters; if every call is logged as "locksmith work," this metric cannot exist.
What a concerning reading looks like. Not a low overall number — a low number in one line while the others are fine. If your smart-key replacement books at a healthy clip and your ignition work books at a third of that, you have not learned that your pricing is high. You have learned that one specific price is wrong, or that one specific service is being explained badly on the phone, or that one competitor has decided to buy that category. Those are three different problems with three different fixes, and the aggregate number tells you none of them.
The single most common mistake here is reading a bad blended rate as a mandate to cut prices across the board. That is an expensive way to fix one line item. The second most common mistake is the opposite: assuming a strong blended rate means nothing needs attention, while one high-ticket category quietly converts at a rate that would alarm you if you could see it alone.
The decision it should change. One price, or one script. Either you adjust the number on that service, or you change how it is presented — because a quote delivered without context ("that will be four hundred") converts differently than the same quote delivered with the reason ("that is the key, the programming, and the trip, all in, and it is done at your car"). Whichever you choose, change one thing at a time and re-read the metric in 30 days. If you want the mechanics of getting consistent, stated pricing onto the phone in the first place, running a price book through phone quoting covers how that works — including the rule that a receptionist should state the price you confirmed and never improvise one.
For benchmark context on what conversion looks like across the trade, we handled that separately; this metric is about your own lines relative to each other, which is the more actionable comparison anyway.
3. Median distance or drive time per booked job
What it is. The middle value — not the average — of the travel distance or estimated drive time from your shop or your tech's start point to each booked job over a period.
How to compute it. Pull the service address off every booked job, geocode it against your origin, and take the median. Then, more usefully, produce the distribution: what share of booked jobs fall inside 10 minutes, 10 to 20, 20 to 35, and beyond. Use the median rather than the mean because a handful of two-hour outliers will drag an average into meaninglessness.
What a concerning reading looks like. A long tail that carries real volume. If a meaningful share of your booked work sits beyond 35 minutes of drive time and you are charging the same trip fee as you charge for a job eight minutes away, that tail is being subsidized by your close-in work. The other concerning shape is a bimodal distribution — a tight cluster near the shop plus a second cluster in a distant suburb — which usually means you have accidentally acquired a second service area without deciding to.
The decision it should change. Your territory boundary and your trip-fee structure. Three concrete options, and you should pick one deliberately rather than drifting:
- Draw the line. Set a hard radius, publish it, and have the phone decline politely and consistently outside it. Every out-of-area job you take at in-area pricing is an hour you did not spend on a job ten minutes away.
- Price the distance. Tiered trip fees by band, stated on the call before dispatch. This is the option that keeps the far work and stops it from losing money.
- Stage differently. If the far cluster is genuinely profitable, the answer may be where a truck starts its day, not what you charge.
A labelled hypothetical to show the shape of the arithmetic, using invented round numbers rather than any real shop's data: if a job 40 minutes out consumes 80 minutes of round-trip driving and your close-in jobs average 20 minutes of round trip, the far job costs you an hour of capacity you could have sold. Whether that hour is worth recovering depends entirely on your own booked rate — which is exactly why this decision has to be made from your log and not from someone else's advice.
4. Reason-for-loss mix
What it is. For every call that produced a quote but no booking, the stated or inferred reason, bucketed into a small fixed set: price, timing or availability, out of service area, wrong service (you do not do that work), caller was shopping and never intended to book, and other.
How to compute it. This one requires discipline rather than math. Somebody — a person or a receptionist with a structured intake — has to tag the outcome at the end of the call. Then it is a simple count by bucket, expressed as a share of all lost quotes. Recordings are what make this honest, because self-reported reasons drift toward whatever the tagger finds least uncomfortable. If your tags say "price" 80% of the time, pull ten recordings and check; you may find half of them are really timing.
What a concerning reading looks like. A single bucket dominating at more than about half of losses. Each dominant bucket points at a completely different fix:
- Price dominant — either the number is genuinely off market, or it is being delivered without justification. Cross-check against metric 2 to find out whether it is all lines or one.
- Timing dominant — you are losing on availability, not money. That is a scheduling and dispatch problem, and the fix is capacity or better slotting, not a discount.
- Out of area dominant — you are advertising into geography you cannot serve. That is a marketing spend problem and a map problem, and it connects straight back to metric 3.
- Wrong service dominant — your marketing is describing a business you are not running, or there is real demand for a service you have decided not to offer, which is worth a second look.
The decision it should change. Which single objection you invest in fixing this quarter. The value of the mix is that it stops you from working on the objection that is loudest in your memory instead of the one that is largest in your data. Owners systematically over-index on price complaints because they sting; timing losses are quiet and often bigger.
5. Repeat and referral share of calls
What it is. The share of inbound calls that come from a phone number you have served before, plus the share of new callers who say they were referred by a past customer or another trade.
How to compute it. Match inbound caller ID against your customer history on the last ten digits — repeat callers are a mechanical lookup. Referral share needs the intake to ask "how did you hear about us" on every call and to record the answer as a structured field rather than free text buried in a note.
What a concerning reading looks like. There is no universally right number here, and any article that gives you one is making it up. What matters is the direction and the composition. A repeat-plus-referral share that is falling quarter over quarter while total volume holds means paid or organic acquisition is masking a retention problem. A share that is very high while total volume is flat means you have a loyal base and no new-customer engine — comfortable, and fragile.
The decision it should change. Where the next marketing dollar goes. High repeat and referral share with flat volume argues for acquisition spend. Low or falling repeat share argues that acquisition spend is pouring into a leaky bucket, and the money belongs in the parts of the business that make a customer call you a second time: follow-through, callbacks answered, warranty work handled without friction, and review generation.
The measurement dependency here is worth naming: attribution on every call is what makes this metric exist, and attribution only works if the question gets asked every time. Humans forget under pressure. That consistency — asking the same intake questions on call number one and call number fifty of a bad Friday — is one of the underrated arguments for automated answering, and it is what makes KeyBot Lite useful as a measurement instrument even at the message-taking tier.
6. After-hours share of revenue versus after-hours share of calls
What it is. Two percentages, side by side. First: the share of your total call volume that arrives outside your posted business hours. Second: the share of your total booked revenue that comes from those calls.
How to compute it. Define after-hours precisely once — say, before 8 AM, after 6 PM, and all day Sunday — and apply it consistently. Count calls in that window as a share of all calls. Then sum booked revenue from jobs originating in that window as a share of all booked revenue. Compare the two figures.
What a concerning reading looks like. The revenue share should exceed the call share, because after-hours work is more urgent, less price-sensitive, and typically carries a premium. If revenue share is roughly equal to call share, you are almost certainly not charging an after-hours premium, or you are charging one and waiving it under pressure. If revenue share is below call share, something is actively wrong: either after-hours callers are converting far worse than daytime callers (check metric 1 for that window before blaming anything else), or your quoting is inconsistent at night.
The decision it should change. Two decisions, actually. First, your after-hours pricing: whether a premium exists, how much it is, and — critically — whether it is quoted as part of the first all-in number rather than added later. A premium disclosed mid-call after a base price has been stated reads as a bait and switch and loses jobs that a single honest number would have won. We wrote the full treatment of that in after-hours emergency pricing.
Second, your on-call rotation. If the after-hours window carries a disproportionate share of revenue, it justifies a real rotation with real compensation rather than an informal understanding that whoever answers the phone goes. If it does not, you have a legitimate case for narrowing the window and stopping the 2 AM erosion of your techs.
7. Time to first touch on messages taken overnight
What it is. The elapsed time between an overnight message landing and the first outbound contact attempt — call or text — from your team.
How to compute it. Timestamp the message, timestamp the first outbound attempt, take the difference, and report the median and the worst case across a month. The worst case matters as much as the median, because the outliers are the customers who tell people about you.
What a concerning reading looks like. Any median past mid-morning, and any tail past the same business day. A message taken at 11:40 PM that gets its first callback at 10:15 the next morning is usually a dead lead: the caller solved the problem overnight with whoever answered, and the callback is now an awkward conversation rather than a sale. The tell that you have this problem is a queue that is worked "when someone gets a minute," which means nobody owns it.
The decision it should change. Your morning routine and, more importantly, ownership. The concrete version: one named person opens the overnight queue at a fixed time, works it top to bottom by urgency flag, and marks each item called back. Not "the office checks messages." A person, a time, and a completion state. This is a five-minute operational change that rescues more revenue per hour invested than most marketing decisions, and it costs nothing.
The second decision is what happens to messages that are genuinely urgent at 2 AM. Some of them should not be waiting for a morning queue at all — they should be escalating to an on-call phone the moment they arrive. That routing rule is a policy decision you make once, from the urgency mix in your own overnight data.
The seven at a glance
| # | Metric | Computed from | Concerning reading | Decision it changes |
|---|---|---|---|---|
| 1 | Answer rate by hour and weekday | Answered vs total inbound, per hour-weekday cell, 60 to 90 days | Any high-volume cell below roughly 80% answered | Coverage: who or what answers each block of hours |
| 2 | Quote-to-book rate by service type | Booked vs quoted, grouped by service line | One line far below the others, not a low blended rate | One price or one script — never an across-the-board cut |
| 3 | Median distance per booked job | Geocoded service addresses vs origin, median plus distribution | A heavy tail beyond 35 minutes at flat trip pricing | Territory boundary and tiered trip fees |
| 4 | Reason-for-loss mix | Outcome tags on every lost quote, verified against recordings | Any single bucket above about half of losses | Which objection you invest in fixing this quarter |
| 5 | Repeat and referral share | Caller ID matched to history, plus structured source field | Falling share while total volume holds | Retention spend versus acquisition spend |
| 6 | After-hours revenue share vs call share | Booked revenue and call counts split by a fixed hours definition | Revenue share at or below call share | After-hours premium and on-call rotation |
| 7 | Time to first touch on overnight messages | Message timestamp vs first outbound attempt, median and worst case | Median past mid-morning, tail past same day | Morning queue ownership and urgent-escalation routing |
Data quality: what makes these numbers trustworthy or worthless
Four things determine whether the seven metrics above are decision-grade or decorative.
Consistent intake. Every metric except the first depends on fields being captured the same way on every call. Service type, source, address, and outcome have to be structured values, not prose in a notes box. A log where "spare key," "extra key," and "2nd key" are three different service types produces three small samples instead of one useful one.
Recordings as ground truth. Tags drift. People under pressure round outcomes toward whatever is easiest to type. The only reliable correction is to periodically pull a sample of calls and check the tag against what actually happened on the line — which is a practice with its own discipline, covered in call recording quality review. Ten calls a month is enough to catch systematic drift.
Sample size and seasonality. Do not act on a metric computed from a week. Locksmith demand moves with weather, school calendars, and holidays; a 60 to 90 day trailing window with a year-over-year sanity check is the minimum for anything that changes a price. Twenty quoted calls in a service line is a hint, not a finding.
Honest denominators. Back to the spine: your denominators only contain answered calls. When you present these numbers to yourself, write the answer rate for the period at the top of the page. It is the confidence interval on everything below it.
What KeyBot Lite can and cannot measure
Being straight about the product boundary, because it directly determines which of the seven you can compute.
KeyBot Lite is a message taker. At $149 per month it answers every call 24/7 in English and Spanish, runs a consistent structured intake, screens spam, and drops the message into your Telegram in seconds with a recording link — 100 calls included, 50 cents per minute after that, first 5 answered calls free within a 7-day trial, live in about ten minutes. That gives you clean data for metrics 1, 3, 5, and 7, and it gives you the raw material for metric 4 through recordings.
It does not quote and it does not book. Which means metrics 2 and 6 — quote-to-book rate by service and after-hours revenue share — cannot be computed from Lite alone, because Lite never states a price and never creates a booking. Those need the full platform: Core at $500 per month for 500 AI minutes with 45 cents per minute overage, Pro at $750 for 1,000 minutes at 40 cents, Elite at $1,200 for 2,500 minutes at 35 cents, each with a 14-day free trial. Full details are on the pricing page, and the question of when a shop should move up is worked through in the Lite versus Core guide.
The honest sequencing for most one- to three-truck shops is: answer everything first at the message-taking tier, watch metric 1 climb, let 60 days of clean data accumulate, and then decide whether the quoting and booking metrics are worth the step up. Deciding that from data beats deciding it from a sales page. If you want to hear the intake before any of it, the instant demo calls your phone in about 30 seconds answering as your own company.
The bottom line
Your call log is the cheapest research your business will ever have access to, and most of it is being thrown away. Seven numbers turn it into operating decisions: answer rate by hour tells you where to put coverage; quote-to-book by service tells you which single price is wrong instead of whether pricing in general is high; median distance tells you where to draw your territory line; reason-for-loss mix tells you which objection to fix first; repeat and referral share tells you whether the next dollar belongs in retention or acquisition; after-hours revenue share versus call share tells you whether your premium is real and whether an on-call rotation is justified; and time to first touch tells you whether the overnight queue has an owner. Every one of them is biased by the calls you never answered, which is why answering comes first and measuring comes second — not the reverse. Pick the loudest of the seven, change exactly one thing, and re-read it in thirty days.
Frequently asked questions
Which of these seven metrics should I compute first?
Answer rate by hour of day and day of week, without exception. It is the only one of the seven that measures the bias affecting all the others, because every other metric is computed from a population of answered calls only. If you are answering 60% of your calls, your quote-to-book rate, your distance distribution, and your reason-for-loss mix are all describing a filtered slice of your market rather than your market. Fix the sensor, then read the instruments.
Why break quote-to-book rate out by service type instead of using one overall number?
Because a blended conversion rate tells you nothing you can act on. A shop with strong smart-key conversion and weak ignition conversion has one wrong price or one badly explained service, and the blended number hides that entirely — it just reads as slightly below average. Splitting by service line converts a vague worry about pricing into a specific decision about one number on one line, which you can change and then re-measure in thirty days.
How long a period should I use before acting on any of these numbers?
Use a trailing 60 to 90 days for anything that changes a price or a schedule, and never act on a single week. Locksmith demand moves with weather, school calendars, and holidays, so a short window will hand you seasonality dressed up as a trend. Within a service line, roughly twenty quoted calls is a hint worth investigating; it is not enough evidence to reprice on by itself.
Can KeyBot Lite give me all seven of these metrics?
No — Lite is a message-taking receptionist, so it produces clean data for answer rate, distance, repeat and referral share, and time to first touch, but it never states a price and never creates a booking. That means quote-to-book rate by service and after-hours revenue share require the full platform. Lite is $149 per month with 100 calls included and 50 cents per minute after; Core, Pro, and Elite run $500, $750, and $1,200 per month with a 14-day free trial, and all plan details are at https://www.thekeybot.com/pricing.
What does it mean if my after-hours revenue share is lower than my after-hours call share?
It means something is actively wrong with either your night coverage or your night quoting, because after-hours work is more urgent and less price-sensitive and should over-index on revenue rather than under-index. Check your answer rate for that window first, since poor overnight answering is the most common cause. If answering is fine, the likely culprit is an after-hours premium that gets waived under pressure or gets added after a base price has already been stated.
How do I stop my reason-for-loss tags from drifting toward inaccuracy?
Audit them against recordings on a sample every month — ten calls is enough to catch systematic drift. Tagging degrades under pressure, and the direction of the drift is predictable: people record the reason that is fastest to select or least uncomfortable to admit, which usually means real timing and availability losses get filed as price objections. That single substitution will send you off to discount work you were actually losing on scheduling.
About the Author
TheKeyBot Team is dedicated to helping locksmiths grow their businesses through AI automation and smart technology. With years of experience in the locksmith industry, our team provides actionable insights and proven strategies.
