How to set quarterly okrs as Professional Services Founders

Strategy & PlanningFor Professional Services Founders2 apps10 steps~20 min to set up

Every quarter, setting OKRs at your consultancy means pulling up last quarter's deck, guessing at utilization numbers because the real figures are still in Harvest, cross-referencing a HubSpot pipeline that nobody updated faithfully, and trying to remember what you actually committed to in January. The session runs two hours, half your senior team debates whose numbers are right, and the resulting OKRs live in a Notion page nobody looks at until the next quarter when you repeat the exercise. You walk out with objectives that feel aspirational but aren't grounded in what your delivery capacity or pipeline actually support.

Strategy & PlanningFor Professional Services Founders2 apps10 steps~20 min to set up
Outcome

What you'll set up

A quarterly OKR-setting session backed by live pipeline, utilization, and revenue data — so you're arguing about strategy, not whose spreadsheet is correct
A structured OKR document with key results that are numerically grounded in your HubSpot deals, Stripe invoices, and Google Calendar utilization data
An automated check-in cadence that resurfaces your OKRs mid-quarter with updated actuals so they don't rot in Notion
The Starch recipe

Apps, data, and prompts

The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.

Data sources & config

Starch syncs your HubSpot data on a schedule (deals, contacts, pipeline stages) and your Stripe data on a schedule (invoices, revenue, subscription status). Google Calendar syncs on a schedule for utilization signals. Gmail syncs on a schedule for client thread context. Slack and Notion are connected from Starch's integration catalog and queried live when automations run. Harvest and Float — if your team uses them — are reachable from Starch's integration catalog for live queries, or Starch can automate them through your browser if a direct connection isn't configured.

Prompts to copy
Pull our last three quarters of closed-won revenue from HubSpot, Stripe invoices, and Gmail threads tagged with client names. Summarize win rates, average deal size, and which service lines grew. I want this as a one-page brief I can share before our OKR session.
Build me a quarterly OKR tracker for a 12-person consultancy. Track three objectives: revenue growth, utilization rate, and client retention. For each, show current actuals from our Stripe and HubSpot data alongside the target we set. Flag any key result that is more than 15% off track.
Every Monday morning, pull our current pipeline value from HubSpot, billable hours logged in the past week from our Google Calendar data, and outstanding invoices from Stripe. Post a summary to our #leadership Slack channel with a one-line status on each active OKR.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Two weeks before quarter-end, trigger a Starch prompt to pull the prior quarter's actuals: closed-won revenue from HubSpot and Stripe, average billable utilization estimated from Google Calendar events, and client retention count from HubSpot deals marked closed-won vs. churned.
2 Starch compiles this into a one-page pre-read brief stored in your Knowledge Management app — every team member gets the same numbers before the session, so you start aligned instead of debating whose export is current.
3 In your OKR session (Meeting Notes running), describe the three to four objectives you're setting for the quarter in plain language. Starch captures decisions, assigns owners, and extracts the draft key results as action items automatically.
4 After the session, pull the meeting transcript and tell Starch: 'Turn the objectives and key results we discussed into a structured OKR document. For each key result, populate the current baseline from our HubSpot and Stripe data.' Starch writes the document with real numbers, not placeholders.
5 Publish the OKR document to your Knowledge Management wiki. Set it as a pinned reference so it surfaces automatically when team members search for 'goals' or 'Q3 targets' — not buried in a Notion page three folders deep.
6 Create a Task Manager entry for each key result owner: 'Review Q3 KR: Grow retainer revenue to $X by September 30.' P1 priority, due date set to the last week of the quarter. Owners get overdue alerts if they haven't logged a check-in.
7 Set up a Monday morning automation: Starch queries your HubSpot pipeline for open deals, Stripe for revenue-to-date, and Google Calendar for the prior week's billable event count. It posts a short OKR pulse to Slack — three lines, one per objective, with a green/yellow/red status.
8 At the six-week mark, trigger a mid-quarter review prompt: 'Compare our Q3 key result targets against current actuals from HubSpot and Stripe. Identify which KRs are at risk and draft two options for each: double down or revise the target.' Starch writes the memo; you make the call.
9 For KRs tied to business development (e.g., 'add two net-new clients'), Starch can monitor your Gmail inbox for threads with prospects and flag conversations that have gone cold for more than 14 days — giving you an early warning before the KR slips.
10 At quarter close, run a retrospective prompt: 'Score each key result against final actuals. For any KR we missed by more than 20%, summarize what the data shows about why — pipeline timing, utilization constraints, or deal size.' Store the retrospective in Knowledge Management alongside the OKR document so next quarter's pre-read has real institutional context.

See this running on Starch

Connect your tools, describe what you want, and the agent builds it. Closed beta is free.

Try it on Starch →
Worked example

Q3 2026 OKR Session — 12-Person Strategy Consultancy

Sample numbers from a real run
Q2 closed-won revenue (Stripe actuals)387,000
Q3 revenue target (OKR key result 1)450,000
Current pipeline value, qualified deals (HubSpot live)610,000
Retainer revenue Q2 (Stripe recurring)142,000
Retainer revenue target Q3 (KR 2)175,000
Avg billable utilization Q2 (Calendar-derived)68
Utilization target Q3 (KR 3, percentage)75

Going into the Q3 OKR session, the founder pulled a Starch brief the night before: Q2 closed at $387K revenue (Stripe), with $142K of that from retainers. HubSpot showed $610K in qualified pipeline — enough to support a $450K revenue target if win rate held near 60%. Billable utilization averaged 68% in Q2, based on Google Calendar events tagged as client-facing across the 12-person team. The team set three key results: grow total revenue to $450K (baseline $387K), grow retainer revenue to $175K (baseline $142K), and raise utilization to 75% (baseline 68%). The retainer KR was the contentious one — two of the firm's four current retainers were up for renewal in August. Starch flagged both renewal conversations in Gmail as threads that had gone quiet. The founder assigned the renewal outreach as P1 tasks in Task Manager before the session ended. Six weeks in, the Monday automation showed pipeline at $520K, revenue-to-date at $198K, and utilization at 71% — yellow on utilization, green on pipeline. The mid-quarter memo Starch drafted identified that two junior staff were pulling the utilization average down because they were between projects; the founder used that to accelerate a staffing decision that had been sitting on her desk.

Measurement

How you'll know it's working

Billable utilization rate by staff member and practice area (target vs. actuals from calendar data)
Pipeline coverage ratio — qualified pipeline value vs. quarterly revenue target (HubSpot)
Retainer revenue as a percentage of total revenue (Stripe, tracked quarter over quarter)
OKR completion rate — percentage of key results hit within 10% of target at quarter close
Client retention rate — active retainer clients at end of quarter vs. start (HubSpot deal stages)
Comparison

What this replaces

The other ways teams handle this today, and how the Starch version compares.

Notion + manual export from HubSpot and Stripe
Free and flexible, but your OKRs are disconnected from live data — you're updating numbers by hand and the document is stale within two weeks of the session.
Lattice or Betterworks
Purpose-built OKR software with check-in workflows, but priced for 50+ person teams, requires IT setup, and doesn't pull from your actual revenue and pipeline data — you still fill in numbers manually.
Kantata (formerly Mavenlink) or Projector PSA
Strong utilization and project tracking for professional services, but implementation takes a quarter, costs scale with headcount, and OKR functionality isn't native — you'd still need a separate goal-tracking layer.
Spreadsheet (Google Sheets) with manual data pulls
Every operator has one; the problem is that someone has to maintain it, the formulas break, and it's never current the week you actually need it for the OKR conversation.
On Starch RECOMMENDED

One platform — knowledge management, task manager all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.

Try it on Starch →
FAQ

Frequently asked questions

Does Starch actually connect to HubSpot, or do I have to export CSVs?
No exports needed. Starch syncs your HubSpot data on a schedule — contacts, companies, deals, and owners — so when your OKR dashboard or brief runs, it's pulling current pipeline values, not a file from last Tuesday.
We use Harvest for time tracking. Can Starch pull utilization from there?
Yes. Harvest is available from Starch's integration catalog, which connects to 3,000+ apps — the agent queries it live when your utilization reports run. If you run into a snag, Starch can also automate Harvest through your browser directly, since any website you can log into is fair game.
What if we want OKRs to live in Notion, not in Starch's Knowledge Management app?
That works. Notion is a scheduled-sync provider — Starch connects directly to your Notion workspace, reads pages and databases, and can write back to them. You could have the OKR document live in Notion while Starch populates it with actuals from HubSpot and Stripe automatically.
Is this going to replace the OKR conversation, or just support it?
It supports it. Starch prepares the data brief before the session, captures the meeting notes during it, and turns decisions into a structured document afterward. The conversation about what to prioritize and why is still yours — Starch just makes sure everyone walks in with the same numbers and nobody leaves without the output written down.
Is Starch SOC 2 certified? We have clients who ask about our data practices.
Not yet — Starch is not SOC 2 Type II certified at this time. If that's a blocker for your client contracts, that's worth knowing upfront. It's on the roadmap.
We set OKRs once and then forget them. How does Starch help with the mid-quarter discipline?
That's exactly what the Monday automation is for. You set it up once: every Monday, Starch pulls your current pipeline, revenue-to-date, and utilization signal, scores them against the targets you set in the OKR document, and posts a three-line summary to Slack. It takes OKRs from a static document to something you actually see every week without anyone having to remember to check.
We don't have a dedicated ops person. How long does this take to set up?
The connections to HubSpot, Stripe, Gmail, Google Calendar, and Slack are each a one-time OAuth connection. The OKR tracker, Monday automation, and Knowledge Management wiki are described in plain language — you tell Starch what you want and it builds the app. Most founders have the core pieces running in under a day, including the first data brief generated.

Ready to run set quarterly okrs on Starch?

Request closed-beta access. Everything is free during beta.

You're on the list! We'll be in touch soon.