Why your roofing backlog has 30 jobs in it that you're not calling

Pull up your AccuLynx or JobNimbus account and look at the estimates you sent out 30, 60, or 90 days ago. Some of them never got a response. Some got a "we'll think about it" that you followed up on once and then let go. A few probably came back as a "not this year" that might be a "yes" right now if anyone called.

That pile is your roofing backlog, and for most independent roofing companies with 5 to 40 crew in the field, it runs into the hundreds of rows.

The problem isn't that those opportunities exist. Every roofing company has them. The problem is that there's no good way to figure out which 30 of those 400 rows are actually worth picking up the phone for this week. So the list sits there, and the office manager works the fresh leads instead, because fresh leads feel more real.

What actually happens to unsold roofing estimates

When a homeowner asks for a roof replacement estimate and then goes quiet, the reasons vary more than most contractors expect. Some got three quotes and went with the lowest number. Some had a financing issue that has since resolved. Some were waiting on an insurance claim. Some just got busy and forgot. And a meaningful percentage of them, if someone from your company called today with a friendly "hey, we quoted you a roof back in March, still thinking about it?" would say yes.

The conversion rate on unsold estimates is never going to be 50%. But it doesn't have to be. If your average roofing job is worth $12,000 and you have 200 dormant estimates sitting in your system, recovering even 5 of them in a quarter is $60,000 in revenue that was already paid for by your original marketing spend. The lead acquisition cost is zero. The sales effort is a phone call and an email.

The math is obvious once you write it down. The reason it doesn't happen consistently is that nobody has told your office manager which 5 to call.

The ranking problem

Most job management systems, whether that's ServiceTitan, Housecall Pro, Jobber, or JobNimbus, let you filter and sort estimates. You can pull a list of open estimates older than 60 days. But sorting by date or by amount doesn't tell you which ones are worth working. A $25,000 estimate from 18 months ago on a customer who has since re-roofed with someone else is not the same as a $14,000 estimate from 6 weeks ago on a customer who has called your office twice about something unrelated.

What makes an unsold estimate worth chasing is a combination of factors: the value relative to your own backlog (a $14,000 quote means something different for a company whose typical job is $8,000 versus one where the typical job is $22,000), how long it's been sitting (estimates in the 30-to-90-day window close at a much higher rate than ones from two years ago), whether you have a working phone number and email address, and what type of opportunity it is.

No spreadsheet does this automatically. And no one in your office has time to build the model by hand.

What a ranked backlog looks like in practice

This is the gap that Paidback fills. You export the CSV from whatever job system you already use, drop it into Paidback, and within a couple of minutes every dormant estimate is scored against your own backlog and sorted by what it's realistically worth to call.

The scoring isn't a black box. For each opportunity, Paidback shows you the factors that put it at the top of the list: the quoted amount as a percentile within your own backlog, the dormancy window, the opportunity type, and the estimated recovery value based on realistic conversion rates you can adjust yourself. If a $9,000 estimate is ranked first, you can open the drawer and see exactly why.

That changes how your office manager starts Monday. Instead of deciding from scratch which old leads to chase, she opens a ranked list and works down from the top. The first ten take about 20 minutes. Each one has a drafted email, a phone script, and an SMS already written from the actual data in the row: the customer's name, what the job was, how much it was quoted for, and how long it's been.

The verified revenue part

One of the reasons roofing owners are skeptical of any tool that promises to recover revenue is that the category is full of services that report "pipeline generated" or "appointments booked" and present those numbers as wins. An appointment that doesn't convert isn't a win. A conversation that doesn't end in a paid invoice isn't a win.

Paidback separates estimated recovery potential from verified recovered revenue at every point in the product. The estimated total on your board is labeled as an estimate, with the multiplier shown. The verified recovered number moves only when you enter an invoice reference, a paid amount, and a paid date. The ROI calculation at the bottom of your ledger is arithmetic: verified recovered revenue minus what you've paid Paidback since you signed up, expressed as a multiple. You can show that number to your accountant and defend every line.

You can start with the free plan, which imports one CSV of up to 150 rows and shows you the full ranked backlog with scoring. No card required. If the board shows you something worth calling, you'll know within the first session whether there's a real backlog to work.

FAQ

How long does it take to see my ranked backlog? If you already know how to export from your job system, you can go from export to ranked board in under two minutes. Paidback reads the header row and maps your columns automatically for standard exports from AccuLynx, Jobber, Housecall Pro, and ServiceTitan.

What if my CSV has messy data? Paidback handles common formatting issues like money values written as "$1,250.00" or "1250" or with European decimal formats, and inconsistent date formats. Rows that can't be parsed are flagged with a reason rather than silently dropped, and you get a downloadable summary of what was skipped.

What's the difference between estimated and verified recovery? Estimated recovery is what your backlog could be worth if a percentage of dormant estimates convert, using conversion rates you set yourself. Verified recovery is only the revenue from jobs where you've entered an invoice reference, a paid amount, and a paid date. They are never combined into a single number.

Does Paidback work with my current job system? Paidback works with any CSV export. If your job system can export to CSV, which AccuLynx, JobNimbus, Jobber, Housecall Pro, and ServiceTitan all can, Paidback can read it. There's no integration to set up and no access to your job system account is required.