learn-people-analytics-with-phoebe / Foundations session 6 of 6
Learn People Analytics with Phoebe · Foundations session 6 of 6

The people dashboard

Most people dashboards are a grid of tiles, each with a big number, a coloured arrow and no date. Tonight rebuilds one as rows instead. Every row answers one question, carries one stock and one flow, prints its base and its date under the number, and ends in a sentence a board could repeat without being wrong. The rows use constructed Apex numbers from the first five sessions: 861 people on 1 July, 22.3 percent attrition on the average base, 137 regretted leavers of 210, tenure of survivors against tenure at exit, and 600 survey answers from 1,022 invited. One row stays empty on purpose. Then two things that happen to dashboards in the wild: a row that becomes somebody's target and stops measuring, and a set of rows that should never exist without a lawyer in the room.

🟢 Foundations Leaders, HR partners, anyone who owns or reads a people dashboard No code 45 min
0-3 · Welcome 3-18 · Rows with bases, the target, the fence 18-40 · Build-along: the Apex dashboard worksheet 40-45 · Q&A
Part 0

Where we start

Five sessions have each produced one habit: a stock needs a date and a flow needs a period, a rate needs its base, a funnel stage is a ratio of the stage before it, a pay gap has two mechanisms, and a survey score is a mean over volunteers. A dashboard is where all five habits either survive or quietly disappear, because a tile has room for a number and not much else. Apex is still the running company, constructed from end to end: four entities, 1,071 staff rows, 210 leavers in the first half of 2026, and nobody in it is real. The dashboard built tonight is small on purpose. Six rows, each of which can be defended line by line, beat twenty tiles of which nobody can say what four of them are divided by.

🎫 Clear all three quiz questions to stamp your passport Live = presented in the 45 minutes Self-study = the full depth, after class ★ Build-along = everyone works it through

★ What you walk out with tonight. A dashboard row format you can apply to any people number: the question, the stock and its date, the flow and its period, the base, the number and one honest sentence. The habit of leaving a row empty rather than filling it with a guess. A partner metric for every row that becomes a target. And the names of the four rules that decide which rows a people dashboard may not have, with the places to learn them properly.

Part 1 · covers one stock and one flow per row

Every row has a stock, a flow, a base and a date

6 min live

A tile that says "Attrition 22.3%" has dropped three things on the way to the screen: how many people left, divided by which headcount, over which period. Put them back and the tile becomes a row: 210 leavers, 1 January to 17 June 2026, over an average headcount of 941.5, 22.3 percent for the half-year. Every row on a people dashboard can be written the same way, and the ones that cannot are the ones to worry about.

THE DASHBOARD AS ROWS constructed Apex, first half of 2026 · every number carries its stock, its flow and its base METRIC STOCK, ON A DATE FLOW, OVER A PERIOD NUMBER BASE Headcount 861 · 1 July 2026 +49 in, -210 out · Jan to Jun 861 1,022 + 49 - 210 Attrition 941.5 · avg of 1 Jan, 1 Jul 210 leavers · 1 Jan to 17 Jun 22.3% average base, H1 Regretted 1,022 · 1 January 2026 137 of 210 leavers · H1 65.2% share of the 210 Tenure active 1 Jan · median 5.01 yrs leavers · median 1.52 at exit 61.0% of 210, under 2 yrs Survey 1,022 invited · 1 Jan 2026 600 answered · constructed 58.7% response rate Pay gap no salary column in the table nothing to count honest, not zero Six rows, one period, and a base under every number. The empty row is honest: Apex has no salary column. Every value is computed from the constructed Apex table, or from the constructed survey on it.
🔍 Click to zoom - the moss strip is the column most dashboards leave out, and the hatched cell is a number nobody invented
LiveOne stock and one flow per row3 min▶

Every row is one question. How many people do we have; how many left; which leavers hurt; how long do people stay; what do people say; what do we pay. A row that answers two questions at once, "headcount and attrition by entity with the trend", is two rows pretending to be one, and the second question always loses its base.

Every row carries a stock and a flow. The stock is a count on a date: 861 on 1 July 2026, 1,022 invited on 1 January. The flow is a count over a period: 49 in and 210 out between January and June, 600 answers in the survey window. Where the row shows a rate, the base goes in its own column so nobody has to guess: the average of 1 January and 1 July for attrition, the 210 leavers for the regretted share and the tenure share, the 1,022 invited for the response rate.

The tenure row is the one to read twice. Active staff have a median tenure of 5.01 years and the 210 leavers had a median of 1.52 at exit, with 61.0 percent under two years. Both numbers are right and they describe different people: the survivors on the date of the photograph, and the people who left. Foundations session 1 called this the survivor table. A dashboard that shows only the 5.01 has quietly answered "how long do people stay" with the people who stayed.

LiveThe honest sentence, one per row3 min▶

Under every row goes one sentence, written so that a board member could repeat it in a meeting without saying anything false. It names the flow, the base, the period, and any assumption. For constructed Apex:

  • Headcount. "Apex had 861 people on 1 July 2026, from 1,022 on 1 January: 49 joined and 210 left."
  • Attrition. "210 people left between 1 January and 17 June against an average headcount of 941.5: 22.3 percent for the half-year, not annualised."
  • Regretted. "137 of the 210, 65.2 percent, left for one of five reasons we classify as regretted; all 11 categories are shown beneath."
  • Tenure. "Staff employed on 1 January had a median tenure of 5.01 years; the 210 who left had a median of 1.52 at exit, and 61.0 percent had been with us under two years."
  • Survey. "600 of the 1,022 invited answered, 58.7 percent; results are favourable and unfavourable shares, and groups under 8 are not shown."
  • Pay gap. "No pay row yet: the table has no salary column, and a pay number without one would be invented."

If a row's sentence cannot be written, the row is not ready. That is not a formatting problem. It means somebody does not know what the number is divided by.

Self-studyThe empty row, the ratings row, and what a trend arrow hides3 min▶

An empty row is a finding. Apex's table has no salary column, so the pay row says so rather than borrowing a national figure or last year's number. Foundations session 4 showed what a pay row needs, the six filing figures and the four bands, and deep-dive session 6 builds a constructed salary table to fill it. Until the data exists, "empty, because" is the honest cell.

A ratings row, if the dashboard has one, is a distribution, not a mean. The share of people at each rating point, with the count, for the same reason Foundations session 5 showed two teams at 3.8. How ratings are made and calibrated is its own subject, taught in Learn Performance Management with Phoebe ↗.

A trend arrow compares two rows, and both need their bases. Attrition up from last half-year means nothing until both halves are on the same base and the same definition of leaver. An arrow drawn between a start-base figure and an average-base figure measures the change of method.

Real world

Twelve tiles and no dates. A leadership team reviews a people dashboard every month: twelve tiles, each a number and an arrow. Asked what the attrition tile is divided by, the analyst who built it has left; nobody else knows whether it is monthly or annual, or whether transfers are in it. The team has been making decisions from it for a year. Rebuilt as rows, three of the twelve cannot be given a base at all and are dropped, and two turn out to be the same number computed twice. Constructed example; the rebuild takes one afternoon and the questions it asks are the ones in this Part.

Part 2 · covers Goodhart on people metrics

When a number becomes a target

5 min live

A dashboard row is a measurement until somebody's bonus depends on it. Then it becomes a target, and the people closest to it discover every way to move the number that does not require moving the thing. Take the regretted row. Apex classifies 137 of its 210 constructed leavers as regretted, because their reason is one of five categories. Set a target to reduce regretted attrition, and the fastest way to meet it is not to keep anybody: it is to change which category a leaver's reason goes into.

THE SAME 210 LEAVERS, RECODED constructed Apex reasons · a target set on regretted attrition · nobody's reason changed BEFORE THE TARGET 23 not regretted 73 regretted 137 of 210 = 65.2% moss line: where regretted ends recoded from Management/Culture to Unknown AFTER A TARGET ON REGRETTED ATTRITION 23 not regretted 96 regretted 114 of 210 = 54.3% Unknown was 17, now 40 The rate fell 11.0 points, 23 of 210, and not one person's reason for leaving changed. Constructed recoding of constructed Apex reasons. The measure became a target, and stopped measuring.
🔍 Click to zoom - the wine block never moved; the line that decides what counts as regretted did
LiveGoodhart on people metrics3 min▶

The popular wording is "when a measure becomes a target, it ceases to be a good measure". It is usually called Goodhart's law, after the economist Charles Goodhart's point about monetary targets, but the sentence most people quote is Marilyn Strathern's generalisation of it: Strathern 1997, "'Improving ratings': audit in the British University system", European Review 5(3) 305-321. It bites hardest on people metrics, because the people being measured are also the people who record the measurement.

In the figure, nothing about any leaver changed. Twenty-three constructed leavers whose reason was Management/Culture were recoded to Unknown, and regretted attrition fell from 65.2 to 54.3 percent, 11.0 points. The same pattern shows up on every people row that gets a target:

  • Time to fill as a target: requisitions get closed with the first acceptable candidate, or reopened under a new number so the clock restarts.
  • Survey response rate as a target: managers chase answers, and the people who would have skipped answer to get it over with, which is a different kind of answer.
  • Engagement score as a target: teams learn which answers are expected, and the distribution moves before the experience does.
  • Attrition as a target: leavers get classified as transfers, retirements or "mutual agreement", and the flow moves between columns instead of stopping.
Self-studyEvery target gets a partner metric2 min▶

The defence is not to stop setting targets. It is to put beside every targeted row a second row that moves the wrong way when the first is gamed. For regretted attrition, the partner is the count in Unknown and every non-regretted category, shown with all 11 categories: in the figure, Unknown going from 17 to 40 is the gaming made visible. For time to fill, the partner is how many of those hires are still there a year later. For response rate, the share of answers that are all the same point. For attrition, the counts of transfers and retirements beside the leavers.

The second defence is to freeze the definition and log every recode: which reason category, changed from what to what, by whom and when. A row whose definition can be changed by the person it measures is a row that will be changed. How targets are set and measured fairly is its own discipline, taught in Learn OKRs and Fair Measurement with Phoebe ↗.

Real world

The quarter regretted attrition fell. A business unit is given a target to cut regretted attrition, and meets it in one quarter. The exit volume did not change and neither did the reasons people gave in their exit interviews; what changed was that the leaving form gained a new default option, "Other", and most managers stopped choosing a category. The partner row, the share of leavers in Other, went from almost nothing to a third. Constructed example; the mechanism is the one in the figure, and the partner row caught it.

Part 3 · covers the fence around a people dashboard

The fence: rows that need a lawyer before they exist

4 min live

Some rows are not an analytics question at all. A tile of sickness absence by named team, a ranking of staff by a model's predicted chance of leaving, a filter that shows trade union members, an automated screen that decides who reaches interview: each of these is a legal question first. Four rules sit on the fence around a people dashboard. They are named here so you recognise them, not taught; each has its own conditions and exceptions, and the courses linked below teach them properly.

THE FENCE what may be computed sits inside; four rules sit on the fence · named here, taught elsewhere INSIDE THE FENCE headcount, joiners, leavers, rates regretted, with its 11 categories tenure, active and at exit survey, as a distribution above the minimum group every row with its base and date aggregates, not individuals GDPR ARTICLE 9 special categories of data, health and trade union membership among them: processing is restricted GDPR ARTICLE 22 decisions based solely on automated processing, with legal or similarly significant effects EU AI ACT, ANNEX III 4 Regulation (EU) 2024/1689: AI used in recruitment, selection, promotion, termination, task allocation and monitoring: high-risk NYC LOCAL LAW 144 enforced from 5 July 2023: annual independent bias audit of automated employment decision tools, published Named, not taught: each rule has its own conditions and exceptions, and the governance courses teach them. A row that would sit outside the fence is a legal question first and an analytics question second.
🔍 Click to zoom - the moss yard is where a people dashboard lives; each sign on the fence is a reason a proposed row goes to the legal team before it goes to the analyst
LiveThe four signs on the fence, named3 min▶

GDPR Article 9 covers special categories of personal data, health and trade union membership among them, and restricts processing them to specific conditions. A sickness absence tile, a disability flag in a filter, a union membership column: each needs its legal basis settled before it reaches a dashboard, and many will never belong on one.

GDPR Article 22 concerns decisions based solely on automated processing that produce legal or similarly significant effects on a person. A dashboard that only informs a human decision is a different thing from a score that decides a bonus, a shortlist or a dismissal on its own, and the difference is the article's subject.

The EU AI Act, Regulation (EU) 2024/1689, Annex III point 4, lists AI systems used in employment as high-risk: recruitment and selection, decisions on promotion and termination, task allocation, and monitoring of workers. A model behind a people dashboard that does any of those carries the Act's obligations for high-risk systems.

New York City Local Law 144, enforced from 5 July 2023, requires an annual independent bias audit of automated employment decision tools, with a published summary that reports impact ratios by sex and by race/ethnicity.

Where to learn each properly: Learn GDPR with Phoebe ↗, Learn PDPA and DNC with Phoebe ↗, Learn AI Governance and the EU AI Act with Phoebe ↗, Learn Data Governance with Phoebe ↗, and for impact ratios, screening and the legal map across the people lifecycle, Learn AI + HR with Phoebe ↗.

Self-studyThe flight-risk tile: the row to argue about2 min▶

The most requested row that should start at the fence is a ranking of named staff by a model's predicted chance of leaving. It can touch every sign at once. Its inputs may include special-category data such as sickness records, which is Article 9. If the ranking triggers retention offers or excludes people from them without a human decision, that is Article 22's question. And a model used for monitoring workers is listed as high-risk in Annex III point 4 of the EU AI Act.

None of that means the analysis can never be done. It means the order of work is legal basis first, then data, then model, then dashboard, and the dashboard version is usually an aggregate: leaving risk by group, above the minimum group size, with no names. Deep-dive session 9 takes the question further: what a model on people data may not see, and the audit as a standing habit.

Real world

A rule that turned a tool into a published audit. Since 5 July 2023, an employer using an automated employment decision tool in New York City has needed an annual independent bias audit of it, with a published summary reporting impact ratios by sex and by race/ethnicity. Under a rule of that kind, a screening model's selection rates by group are no longer an internal curiosity: they are a line somebody has to be able to publish. The impact ratio itself, and the four-fifths rule of thumb, are taught in Foundations session 3 and in depth in AI + HR.

Build-along

The Apex dashboard, on paper

★ 22 min · everyone works it through

No code tonight. Six worksheet steps that turn a list of people questions into a dashboard whose every row can be defended: the questions, the stocks with their dates, the flows with their periods, the numbers with their bases, one honest sentence each, and the partner metric and fence check. The worked example is constructed Apex, with the attrition row filled in the figure; deep-dive session 1 builds the table behind every row in pandas. Work each step for your own dashboard as we go.

ONE ROW, SIX SLOTS the attrition row for constructed Apex, filled in the order the worksheet asks DASHBOARD ROW · Attrition, all Apex slot 5 is written from slots 1 to 4; slot 6 is checked last 1 · the stock, and its date 941.5 average of 1 Jan and 1 Jul 2026 2 · the flow, and its period 210 leavers 1 January to 17 June 2026 3 · the number, and its base 22.3% average base, half-year 4 · the partner metric 65.2% regretted, 137 of 210 5 · the honest sentence 210 left against an average of 941.5: 22.3 percent for the half-year, 1 Jan to 17 Jun 6 · the fence check no special-category data no decision made by it alone GDPR 9 and 22: clear Slots 1 and 2 are the evidence, slot 3 is the arithmetic, slot 5 is what a board reads. Every value is from the constructed Apex table; the same six slots work for any row on any dashboard.
🔍 Click to zoom - the moss slot is the only one that goes on the slide, and it cannot be written until the four slots before it are full

Step 1 · Write the questions, one per row. Not the metrics your tool offers: the questions leadership actually asks. Six is plenty. Apex's six are how many, how many left, which leavers hurt, how long people stay, what people say, and what we pay.

★ Step 1 · the rows1 how many people do we have? headcount 2 how many left? attrition 3 which leavers hurt? regretted share 4 how long do people stay? tenure, active and at exit 5 what do people say? survey 6 what do we pay, and to whom? pay gap yours: ____________________________________________

Step 2 · Give each row its stock and its date. A count at an instant, with the date written beside it. If a row has no stock, it is not yet a row.

★ Step 2 · stocks, on datesheadcount: 861 on 1 July 2026 (from 1,022 on 1 January) attrition: 941.5, average of 1 January and 1 July survey: 1,022 invited, 1 January 2026 pay gap: no salary column: the row stays empty yours: ________ on ________

Step 3 · Give each row its flow and its period. A count over a period, with both ends of the period written. The same period for every row, or the rows cannot be read together.

★ Step 3 · flows, over periodsjoiners: 49 1 January to 30 June 2026 leavers: 210 1 January to 17 June 2026 regretted: 137 of the 210, same period answers: 600 survey window, constructed yours: ________ from ________ to ________

Step 4 · Write the number with its base under it. Every rate says what it is divided by. Annualising is labelled as an assumption or not done at all.

★ Step 4 · numbers and basesattrition: 210 / 941.5 = 22.3 percent average base, half-year regretted: 137 / 210 = 65.2 percent share of leavers, 5 of 11 categories tenure: 61.0 percent of leavers under 2 years (active median 5.01, exit median 1.52) survey: 600 / 1,022 = 58.7 percent response rate annualised: only if labelled "doubled H1, assumes H2 repeats": 44.6 percent

Step 5 · Write the honest sentence for each row. Flow, base, period, and any assumption, in words a board member could repeat. If you cannot write it, the row is not ready.

★ Step 5 · the sentence"210 people left between 1 January and 17 June 2026 against an average headcount of 941.5: 22.3 percent for the half-year, not annualised. 137 of them, 65.2 percent, gave one of the five reasons we classify as regretted." yours: ______________________________________________________________

Step 6 · Name the partner metric, and check the fence. For any row that is or may become a target, write the row that moves the wrong way when it is gamed. Then ask of every row whether it uses special-category data or decides anything on its own.

★ Step 6 · partner and fencerow: regretted share partner: count in Unknown and every non-regretted category (Unknown: 17) recode log: yes / no owner: ______________ special-category data (GDPR 9)? no decides anything alone (GDPR 22)? no AI used for workers (AI Act Annex III 4)? no if any answer is yes: legal review before the row exists

Print the base column. If there is room on the dashboard for one more column, it is the base. A board that sees "22.3 percent, 210 of an average 941.5, half-year" will ask better questions than a board that sees 22.3 in red, and it will not be surprised when the next report uses the same numbers.

Homework

Before deep-dive session 1

30 min
  1. Rebuild one real dashboard as rows. Take a people dashboard you use and write every tile as a row: stock and date, flow and period, base, number. Mark the tiles you cannot complete; that list is your first finding.
  2. Write the honest sentence for the three rows your leadership quotes most, in words they could repeat without being wrong.
  3. Find one target. For a row that is somebody's target, name its partner metric, and check whether the definition can be changed by the person it measures.
  4. Walk the fence. List any row or filter that touches health, union or other special-category data, or a score that decides something on its own, and who you would ask about it. Then bring the dashboard to deep-dive session 1, where the table behind every row is built in code.
Check yourself

Three questions

Clear all three and Foundations session 6 gets stamped in your passport.

1 · A dashboard tile reads "Attrition 22.3%" in red. What does the row need before anyone acts on it?

A rate is a flow over a stock, and a tile drops both. The row puts them back, with the date, so the number means one thing to everyone who reads it.

2 · After a target is set on regretted attrition, the regretted share falls from 65.2 to 54.3 percent in the same 210 leavers, and Unknown rises from 17 to 40. What happened?

The popular wording is Strathern's, 1997, of Goodhart's point. Every targeted row needs a partner row that moves the wrong way when the first is gamed. The recoding here is constructed.

3 · A leader asks for a tile ranking named staff by a model's predicted chance of leaving, built partly from sickness records, that automatically decides who gets a retention offer. What is the first step?

Some rows sit on the fence. Naming the rules is enough to know who to ask; the governance courses and deep-dive session 9 go further.

Sources covered

What this session teaches, and where it came from

✓One stock and one flow per row, each with its base and date; the honest sentence; the partner metricStandard practice, no single source
✓The Apex rows: 1,022 + 49 - 210 = 861; 22.3 percent on the average base 941.5; 137 of 210 regretted, 65.2 percent; active median tenure 5.01, exit median 1.52, 61.0 percent under two years; Unknown 17 of 210Computed from the constructed Apex table; Apex and everyone in it are invented
✓Survey row: 600 of 1,022 invited, 58.7 percent; minimum group 8Constructed survey on the constructed table; 8 is a stated choice
✓The recoding: 23 Management/Culture leavers to Unknown, regretted 65.2 to 54.3 percent, Unknown 17 to 40Modelled on constructed reasons; nobody's reason changed, which is the point
✓Strathern 1997, "'Improving ratings': audit in the British University system", European Review 5(3) 305-321The popular wording of Goodhart's law; named, not quoted beyond one sentence
✓GDPR Article 9 (special categories: health, trade union membership among them) and Article 22 (solely automated decisions with legal or similarly significant effects)Primary; named, taught in the GDPR course
✓EU AI Act, Regulation (EU) 2024/1689, Annex III point 4: recruitment, selection, promotion, termination, task allocation and monitoring are high-riskPrimary (EUR-Lex); named, taught in AI Governance
✓New York City Local Law 144 of 2021, enforced from 5 July 2023: annual independent bias audit of automated employment decision tools, published summary, impact ratios by sex and race/ethnicityPrimary; named, taught with impact ratios in AI + HR
◐The pay row, left emptyApex has no salary column; a constructed salary table is built in deep-dive session 6
◐A ratings row as a distributionNamed and linked; ratings belong to Performance Management

Every fact on this page, and its verification tier, is recorded in the course's source map.

Foundations session 6 cheat sheet · pin this

One row, one questionA stock on a date, a flow over a period, the base in its own column, the number, one sentence.
The honest sentence"210 left against an average of 941.5: 22.3 percent for the half-year, not annualised." If it cannot be written, the row is not ready.
Empty is honestNo salary column, no pay row. An empty cell with its reason beats a borrowed number.
Target, then partnerA measure made a target stops measuring (Strathern 1997). Pair it: regretted 65.2 to 54.3 while Unknown went 17 to 40.
The fence, GDPRArticle 9: health, union membership and other special categories. Article 22: decisions made solely by automated processing.
The fence, AI rulesEU AI Act 2024/1689 Annex III point 4: AI in hiring, promotion, termination, allocation, monitoring is high-risk. NYC LL144 audits since 5 July 2023.