Pro workbook: Goals, Check-ins, Areas, Setup, Formulas. Sample data, real formulas.
| Goals and KPIs | ||||||||||||||||
| One row per goal. Progress, expected progress from the dates, days left and status are calculated; the current value comes from the latest check-in. | ||||||||||||||||
| As of | 14 Sep | Goals | 12 | |||||||||||||
| Done | 2 | |||||||||||||||
| On track | 4 | |||||||||||||||
| Behind | 5 | |||||||||||||||
| Area | Goal | Metric | Unit | Start | Target | Current | Start date | Due | Owner | Progress | Expected | Days left | Status | Overdue | 1 | |
| Sales | Grow monthly recurring revenue | MRR | $ | 42000 | 60000 | 54500 | 1 Jan | 31 Dec | Ana | 69% | 70% | 108 | On track | Average progress | 62% | |
| Sales | Shorten the sales cycle | Days to close | days | 41 | 30 | 36 | 1 Jan | 31 Dec | Ana | 45% | 70% | 108 | Behind | Due in 30 days | 1 | |
| Marketing | Organic traffic | Sessions / month | 18000 | 40000 | 27500 | 1 Jan | 31 Dec | Ben | 43% | 70% | 108 | Behind | ||||
| Marketing | Newsletter list | Subscribers | 3100 | 8000 | 6900 | 1 Jan | 31 Dec | Ben | 78% | 70% | 108 | On track | ||||
| Marketing | Launch the partner programme | Partners signed | 20 | 20 | 1 Feb | 31 Aug | Chloe | 100% | 100% | -14 | Done | |||||
| Product | Ship the mobile app | Milestones done | of 8 | 8 | 5 | 1 Mar | 31 Oct | Dev | 62% | 81% | 47 | Behind | ||||
| Product | Cut crash rate | Crash-free sessions | % | 97.2 | 99.5 | 98.1 | 1 Jan | 30 Jun | Dev | 39% | 100% | -76 | Overdue | |||
| Operations | Support first reply | Hours, median | h | 9.5 | 4 | 5.2 | 1 Jan | 31 Dec | Elif | 78% | 70% | 108 | On track | |||
| Operations | Vendor spend | Contracts renegotiated | of 12 | 12 | 4 | 1 Apr | 31 Dec | Elif | 33% | 61% | 108 | Behind | ||||
| Finance | Gross margin | Margin | % | 61 | 68 | 66.5 | 1 Jan | 31 Dec | Chloe | 79% | 70% | 108 | On track | |||
| Finance | Days sales outstanding | DSO | days | 52 | 35 | 49 | 1 Jan | 30 Sep | Chloe | 18% | 94% | 16 | Behind | |||
| People | Fill the open roles | Hires | of 6 | 6 | 6 | 15 Jan | 31 Jul | Elif | 100% | 100% | -45 | Done | ||||
| Monthly check-ins | ||||||||||||||||
| Type each goal's value at the end of the month. The last filled-in month is the goal's current value. | ||||||||||||||||
| First month | Jan 2026 | |||||||||||||||
| Goal | Jan 2026 | Feb 2026 | Mar 2026 | Apr 2026 | May 2026 | Jun 2026 | Jul 2026 | Aug 2026 | Sep 2026 | Oct 2026 | Nov 2026 | Dec 2026 | Latest | Change | Target | To go |
| Grow monthly recurring revenue | 43200 | 44900 | 46100 | 48000 | 49800 | 51000 | 52600 | 54500 | 54500 | 12500 | 60000 | 5500 | ||||
| Shorten the sales cycle | 40 | 39 | 39 | 38 | 37 | 37 | 36 | 36 | 36 | -5 | 30 | -6 | ||||
| Organic traffic | 18900 | 20100 | 21800 | 23000 | 24400 | 25100 | 26200 | 27500 | 27500 | 9500 | 40000 | 12500 | ||||
| Newsletter list | 3400 | 3900 | 4500 | 5000 | 5600 | 6100 | 6500 | 6900 | 6900 | 3800 | 8000 | 1100 | ||||
| Launch the partner programme | 2 | 5 | 9 | 12 | 15 | 18 | 20 | 20 | 20 | 20 | ||||||
| Ship the mobile app | 1 | 2 | 3 | 3 | 4 | 5 | 5 | 5 | 8 | 3 | ||||||
| Cut crash rate | 97.4 | 97.6 | 97.9 | 98 | 98.1 | 98.1 | 98.1 | 1 | 99.5 | 1.4 | ||||||
| Support first reply | 9.1 | 8.4 | 7.6 | 6.9 | 6.2 | 5.8 | 5.5 | 5.2 | 5.2 | -4 | 4 | -1.2 | ||||
| Vendor spend | 1 | 2 | 2 | 3 | 4 | 4 | 4 | 12 | 8 | |||||||
| Gross margin | 61.5 | 62.2 | 63 | 63.8 | 64.5 | 65.2 | 65.9 | 66.5 | 66.5 | 6 | 68 | 1.5 | ||||
| Days sales outstanding | 51 | 50 | 50 | 49 | 49 | 48 | 49 | 49 | 49 | -3 | 35 | -14 | ||||
| Fill the open roles | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 6 | 6 | 6 | ||||||
| By area and by owner | ||||||
| How each part of the plan is doing. | ||||||
| Area | Goals | Done | On track | Behind | Overdue | Avg progress |
| Sales | 2 | 1 | 1 | 57% | ||
| Marketing | 3 | 1 | 1 | 1 | 74% | |
| Product | 2 | 1 | 1 | 51% | ||
| Operations | 2 | 1 | 1 | 56% | ||
| Finance | 2 | 1 | 1 | 48% | ||
| People | 1 | 1 | 100% | |||
| Owner | Goals | Done | On track | Behind | Overdue | Avg progress |
| Ana | 2 | 1 | 1 | 57% | ||
| Ben | 2 | 1 | 1 | 60% | ||
| Chloe | 3 | 1 | 1 | 1 | 65% | |
| Dev | 2 | 1 | 1 | 51% | ||
| Elif | 3 | 1 | 1 | 1 | 71% | |
| Avg progress is the mean of the goals' progress in that group — a finished goal counts 100%, one not started 0%. |
| Setup | |||
| The as-of date, the first month of check-ins, and the lists. | |||
| As of | 2026-09-14 | Type =TODAY() to keep it live | |
| Check-ins start | Jan 2026 | ||
| Areas | Owners | ||
| Sales | Ana | ||
| Marketing | Ben | ||
| Product | Chloe | ||
| Operations | Dev | ||
| Finance | Elif | ||
| People | |||
| How the formulas work | ||
| Every formula in this workbook, in plain words. Nothing is hidden and nothing needs a macro. Formulas are shown without the leading = sign. | ||
| Where | Formula | What it does |
| Goals · Progress | MAX(0,MIN(1,(G8-E8)/(F8-E8))) | Share of the distance from start to target that's covered. For a goal that goes down both differences are negative, so the ratio is still positive. MIN/MAX hold it between 0 and 100%. |
| Goals · Expected | MAX(0,MIN(1,($B$3-H8)/(I8-H8))) | Share of the time from start date to due that has passed — what progress 'should' be if it ran evenly. |
| Goals · Status | IF(K8>=1,"Done",IF(M8<0,"Overdue",IF(K8>=L8-0.1,"On track","Behind"))) | Done first, then Overdue, then a ten-point tolerance against expected. |
| Goals · Current (Pro) | IF(COUNT('Check-ins'!B6:M6)=0,E8,'Check-ins'!N6) | The latest check-in, or the start value while there is none. |
| Check-ins · Latest | INDEX(B6:M6,MATCH(SUMPRODUCT(MAX((B6:M6<>"")*$B$5:$M$5)),$B$5:$M$5,0)) | The latest filled-in month: the biggest month date among filled cells, found again with MATCH, then that cell. Gaps are fine. SUMPRODUCT makes MAX see the whole row without array entry. |
| Goals · Average progress | SUM(K8:K47)/COUNTA(B8:B47) | Mean over the goals that exist; empty rows contribute 0 to the sum and nothing to the count. |
| Goals · Due in 30 days | COUNTIFS(M8:M47,">=0",M8:M47,"<=30",N8:N47,"On track")+COUNTIFS(M8:M47,">=0",M8:M47,"<=30",N8:N47,"Behind") | Open goals due within a month — naming the two open states keeps empty rows out. |
| Check-ins · Change | N6-Goals!E8 | Latest minus start value; the custom format shows a + on gains. |
| Areas · Avg progress | SUMIF(Goals!$A$8:$A$47,A5,Goals!$K$8:$K$47)/B5 | Progress summed over the area's goals, divided by their count. |