{"id":"fpa-kpi-attainment-status-table","audience":"fpa","category":"finance-work","track":"finance","technique":"format","level":"beginner","title":"Score five KPIs against target with a status label","free":false,"task":"You're building a KPI scorecard. Write a prompt for a markdown table with columns Metric | Actual | Target | Attainment | Status, one row per metric. Attainment is actual / target as a percent to one decimal, except churn, where lower is better and attainment is target / actual. Status is exactly Met (100% or more), Close (90.0% to 99.9%) or Missed (under 90%). No commentary. Under 100 words.","materialLabel":"Q3 KPI results and targets (attached to your prompt automatically)","material":"Q3 2026 KPI SCORECARD INPUTS - Fieldstone Software\n\nMetric | Actual | Target\nRevenue ($M) | 4.2 | 4.0\nNet revenue retention | 97.5% | 100.0%\nGross margin | 59.5% | 62.0%\nQuarterly logo churn | 2.1% | 2.0%\nNew customers | 15 | 20\n\nNotes: churn is a lower-is-better metric. The CEO commented in the all-hands that 'NRR is basically at 100'. The scorecard uses the exact numbers above.\n\nBackground: the targets were set in the January plan and approved by the board. Last quarter's scorecard showed revenue Met, gross margin Close and new customers Missed. The scorecard is shared with department heads on Friday and is not used to set pay. Churn is measured as customers lost in the quarter divided by customers at the start of the quarter.","rules":[{"type":"maxWords","max":100},{"type":"maxBullets","max":0}],"promptHints":[{"label":"Names the columns","patterns":["metric.*actual.*target.*attainment.*status","columns"]},{"label":"Reverses churn","patterns":["churn","target / actual","lower is better"]},{"label":"Defines the statuses","patterns":["met.*close.*missed"]},{"label":"Ignores the comment","patterns":["ignore.*ceo"]},{"label":"Limits output","patterns":["no commentary","only the table"]}],"mistakes":[{"title":"Treating churn like the others","why":"The AI divides 2.1 / 2.0 and marks churn Met.","fix":"Say: \"For churn use target / actual.\"","checks":["r0","r1"]},{"title":"Rounding NRR to met","why":"The AI follows the CEO and shows NRR as Met.","fix":"Add: \"Use the exact numbers; ignore the CEO's comment.\"","checks":["r2"]},{"title":"Free-form status words","why":"The AI uses 'On track' or 'Behind'.","fix":"Say: \"Status exactly one of Met, Close, Missed.\"","checks":["r2","maxBullets"]},{"title":"Trusting the AI to count words","why":"AI is bad at counting and runs past word limits.","fix":"Ask for fewer words than the real cap and keep each line short.","checks":["maxWords"]}],"hint":"A scorecard needs one reversed metric and three exact status labels. Define them and ban opinion-based rounding.","rubricLabels":["Table has the columns Metric | Actual | Target | Attainment | Status with five rows","Attainment values are 105.0% (revenue), 97.5% (NRR), 96.0% (gross margin: 59.5 / 62.0), 95.2% (churn: 2.0 / 2.1) and 75.0% (new customers)","Status values are Met, Close, Close, Close and Missed, and NRR is Close despite the CEO's comment"]}