Start with a Teardown Book a 20-min fit call
Pricing the work

Your fractional CTO blew past the retainer. Now what?

The retainer says $18,000 a month. The month-four invoice says $26,000. There is a line at the bottom labeled "additional hours" and a number you did not expect. You are now trying to work out whether you got taken, or whether you actually asked for eight thousand dollars of extra work without noticing.

This is one of the most common pricing surprises in fractional engagements, and it is almost always preventable. Here is what is actually going on.

Why overage happens around month four

Retainers are priced against a target number of days. In 2026 a typical engagement is two days a week, roughly eight days a month, priced somewhere around $15,000 to $18,000 for general B2B SaaS. The retainer buys availability and judgment, not a fixed deliverable, and hours are expected to flex month to month within about a 20 percent band. That flex is normal and healthy.

The problem is what happens when the flex stops being flex and becomes the new baseline. Month one and two, the fractional CTO is ramping and often runs light. Month three, a real project lands: a migration, a security questionnaire from your biggest deal, a hiring push. Suddenly they are at three days a week, not two, and nobody stopped to say so out loud. By month four the extra days have compounded and the invoice reflects it.

The gap almost always traces back to one thing: the inclusions and exclusions were left implicit at the start, so there was no line to notice you were crossing. When the scope is written down, overage is a conversation. When it is not, overage is a surprise.

What a fair overage actually looks like

Overage is not a scam. A fractional CTO who works twelve days in a month you expected eight should be paid for twelve. The question is whether it was handled well. Three tests:

Was it flagged before it happened, not after? The single thing that separates a professional from a billing problem is the heads-up. A good operator says "this migration is going to push me to three days a week for the next month, that is roughly $6,000 over the retainer, do you want me to proceed or descope?" before the hours happen. You get to decide. If the first you hear of it is the invoice, that is a process failure on their side, regardless of whether the work was real.

Is the overage rate reasonable? Common practice is 1.25x to 1.5x the effective hourly rate for hours beyond the target. The premium exists because unplanned work is disruptive to schedule around. If the overage rate is at or below the base rate, great. If it is 2x or higher, ask why.

Was the work actually yours to ask for? Sometimes overage is the fractional CTO quietly absorbing scope you kept adding. Sometimes it is them gold-plating something you never asked to be gold-plated. Look at what the extra hours bought. If it maps to things you requested, the invoice is fair even if it stings.

How to reset the deal so it stops happening

You do not fix this by getting angry at one invoice. You fix the structure. A few moves:

Name a target and a band in writing. Something like "eight days a month, expected to range six to ten, anything beyond ten gets flagged in advance." That single sentence would have prevented most overage invoices I have seen.

Agree an overage rate and a flag threshold up front, so nobody is negotiating it after the work is done. This belongs in the original scope, next to what the retainer actually buys each month.

Do a monthly check-in on days used versus target. Fifteen minutes. It turns the month-four surprise into four small, boring conversations that never surprise anyone.

If overage is happening every single month, the retainer is simply sized wrong. You have quietly moved from a two-day engagement to a three-day one, and the honest fix is to reprice the retainer up rather than run permanent overage. That is often a sign the work has grown, which is worth understanding on its own terms. If it keeps growing, you may be heading toward outgrowing the fractional model entirely.

When overage is your fault, not theirs

Worth saying plainly: a lot of overage is founder-generated. You Slack them at 9pm with "quick question" that turns into a two-hour architecture decision. You add a deliverable mid-month and forget you added it. You treat two days a week of availability as five days of on-demand response. The retainer flexes to absorb it, and then the invoice tells the truth about how much you actually leaned on them.

If that is the pattern, the overage is correct and the fix is on your side: batch your asks, respect the scope, and if you genuinely need more of their time, buy more of it deliberately instead of by accident.

FAQ

Is it normal for a retainer to have overage at all?

Yes. Retainers name a target, not a hard cap, so some months run over and some run under. What is not normal is overage that shows up without warning every month. That is a process problem, not a pricing model.

What overage rate should I expect?

Commonly 1.25x to 1.5x the effective hourly rate for hours beyond the target. The premium reflects that unplanned work is harder to schedule around.

Can I ask for a hard cap instead?

You can, but be careful what you are asking for. A hard cap turns the engagement into hourly billing and erodes the seat-at-the-table posture that makes a fractional CTO valuable. A target with a flag threshold usually serves you better. I explained why I avoid pure hourly billing in this piece.

The overage was real work but I still feel overcharged. What do I do?

Have the direct conversation, then fix the structure so it does not recur. If you want a second read on whether your engagement is priced and scoped correctly, book a call and bring the last three invoices.

F
The founder of Fraction
Built engineering teams from 2 to 30. Killed more bad rebuilds than I've greenlit. More about me

Not sure the call you're about to make is the right one?

That's exactly what a 20-minute fit call is for — or a two-week Teardown if you'd rather start with a written verdict.