How to price programming mentoring and async help
Set a session rate, choose between packages and pay-per-session, and put a clear limit on code reviews and messages between sessions.
5 min read
You agreed to mentor a junior developer for an hour a week. Three months later the hour is still there, but so are the pull requests to review on Sunday, the "quick question" at 11pm and the half-day you spent untangling their deployment. The hour is paid. The rest is not.
Most programming mentors price the live session and leave everything around it open. This post shows how to price the three things you actually sell: live sessions, code reviews and async help, so that your evenings come back and your mentees know exactly what they are getting.
Start from what an hour of your time is worth
Before you pick a number, work out the floor. Take the income you want from mentoring in a year and divide it by the hours you can realistically sell. Then remember that each paid hour carries unpaid time with it: preparing, reading code before the call, writing follow-up notes, chasing payment.
A simple way to see it:
- Decide how many live hours a week you can give, say 8.
- Count the weeks you will actually work, say 44 once you allow for holidays, illness and slow months.
- That is 352 sellable hours a year.
- If you want 30,000 from mentoring, your effective rate needs to be about 85 an hour, before tax.
Now add the hidden time. If each one-hour session takes another 20 minutes of prep and notes, your real rate at 85 is closer to 64 an hour. Either charge more or cut the hidden time.
Then check your number against the market you work in. Look at what other mentors with your experience and stack publicly charge, and at what your mentees would pay for a course or bootcamp that promises the same outcome. A senior engineer who has hired juniors can charge more than someone two years into their first job, and that is fair: the advice is worth more.
Price the three things separately
The common mistake is one rate for "mentoring" that quietly covers everything. Split it.
Live sessions
This is your anchor price. A 60-minute call with screen sharing, pairing or career talk. Some mentors offer 30 and 90-minute options too. If you do, keep the 30-minute price above half the hour, because the setup and context-switching cost is the same.
Code reviews
A review is real work, and its size varies wildly. A 40-line function and a 2,000-line pull request are not the same job. Price reviews in one of two ways:
- By size: a small review (up to about 200 changed lines) at a fixed price, a larger one quoted before you start.
- By time: reviews billed in 30-minute blocks at your session rate, with an estimate up front.
Either works. What does not work is reviews that are "included" with no limit.
Async help
Messages, emails and short questions between sessions. This is where unpaid evenings go. Decide what you will answer and how fast, then price it. More on limits below.
Pay-per-session or a monthly package
Pay-per-session suits mentees who want help with one thing: an interview next month, a single project, a code review before launch. It is simple and nobody feels locked in.
A monthly package suits mentees who want steady progress over months: learning a stack, moving from junior to mid-level, building a portfolio. It also suits you, because you know your income in advance and you stop chasing a payment after every call.
A package that works for most mentors looks like this:
- 4 live sessions a month, booked at a regular slot.
- Up to 2 small code reviews a month.
- Async questions answered within 2 working days, during working hours.
- Paid at the start of the month.
Price it slightly below four single sessions plus two reviews bought one by one. The discount is the reason to commit. The upfront payment is your side of the deal.
Write down what happens to a missed session. Many mentors allow one reschedule a month with 24 hours' notice, and count a no-show as used. If you need a starting point, what to charge when a client cancels at the last minute covers the same problem for tutors, and the rules carry over. Selling sessions in packs has its own pitfalls, which selling session packs without chasing payments walks through.
Put a limit on async help
Async help is the part mentees value most and you price worst. One good answer at the right moment can save them a day. That is exactly why it grows until it fills your week.
Set the limits before the first session, not after you are already tired:
- Response time. "I reply within 2 working days" is a promise you can keep. "Message me any time" is not.
- Hours. Say when you answer: weekdays, during working hours, in your time zone.
- Size. A question you can answer in a few minutes is included. Anything that needs you to clone the repo, run the code or write more than a few paragraphs becomes a review or goes on the agenda for the next call.
- Channel. Pick one or two places for questions, whether that is email, a chat app or comments on the pull request, so nothing gets lost across five apps.
When a question goes over the line, say so plainly: "This needs me to run your project, so let's take it in Thursday's session, or I can review it as a paid review this week." Most mentees are fine with that. They just did not know where the line was.
Write the price down once
Put your rates, your package and your limits on one short page you send every new mentee before the first session. Include:
- Your session rate and lengths.
- How reviews are priced.
- What the monthly package includes and costs.
- Your async response time and hours.
- Your cancellation rule.
- How and when to pay.
A written page does two things. It saves you repeating the same conversation, and it means a mentee who asks for more is asking for something extra, not challenging you.
Raise your rates on a schedule
Your first rate is a guess. Review it every six months. If your slots are always full and nobody blinks at the price, it is too low. Raise it for new mentees first, then give current ones a month's notice before the change reaches them.
What to do this week
- Work out your real hourly rate, including prep and follow-up time.
- Decide a price for a small code review.
- Write your async limits in three sentences.
- Turn all of it into one page and send it to your next new mentee.
If keeping track of who has paid for which sessions is the part that slips, BonHand keeps a running balance for each client and drafts a payment reminder that lists every unpaid session, and it is free for up to 5 clients.