{"id":"fpa-renewal-forecast-known-churn-lines","audience":"fpa","category":"finance-work","track":"finance","technique":"constraints","level":"advanced","title":"Forecast renewals by removing known churn first","free":false,"task":"You're forecasting Q1 contract renewals. Write a prompt for plain text with lines starting \"Up for renewal:\", \"Known churn:\", \"Expected renewed:\" and \"Expected loss:\", each with the math. Remove known churn first, then apply the historical renewal rate to what remains. Expected loss is up for renewal minus expected renewed, split into known and expected. Don't mention the sales team's belief that all will renew. Under 80 words. No bullets or numbering.","materialLabel":"Renewal list and history (attached to your prompt automatically)","material":"Q1 2027 RENEWAL FORECAST INPUTS - Brightpath Learning\n\nContracts up for renewal in Q1: 40 contracts at $5,000 ARR each ($200,000 total).\nKnown churn: 2 contracts (customers gave written notice they will not renew): $10,000.\nHistorical renewal rate for contracts without notice of non-renewal: 90% (average of the last 6 quarters).\n\nMethod: expected renewed = (up for renewal - known churn) x historical rate. Expected loss = up for renewal - expected renewed.\n\nNotes: the account management team said 'we will renew all 40 if we try hard enough'. That is a goal, not a forecast. The historical rate is an estimate.","rules":[{"type":"plainText"},{"type":"maxWords","max":80},{"type":"maxBullets","max":0}],"promptHints":[{"label":"Names the four lines","patterns":["up for renewal","known churn","expected renewed","expected loss"]},{"label":"Removes known churn first","patterns":["known churn first","remove known"]},{"label":"Gives the rate","patterns":["90%"]},{"label":"Bans the goal","patterns":["(do not|don'?t).*(account|goal)"]},{"label":"Caps length","patterns":["\\d+\\s*words","plain"]}],"mistakes":[{"title":"Applying 90% to all contracts","why":"The AI applies 90% to $200,000 and gets $180,000.","fix":"Say: \"Remove known churn first, then apply 90% to what remains.\"","checks":["r2"]},{"title":"Echoing the goal","why":"The AI says all 40 could renew.","fix":"Add: \"Do not mention the account team's goal.\"","checks":["r2"]},{"title":"Loss without the split","why":"The AI reports $29,000 with no known/expected split.","fix":"Add: \"Expected loss with the known and expected parts.\"","checks":["r2"]},{"title":"Markdown extras","why":"The AI adds bold labels, headings and a closing note.","fix":"Say: \"Plain text, no bold. Output only the lines asked for.\"","checks":["plainText","maxBullets","r0","r1"]},{"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":"Known churn comes out before the historical rate is applied. State the order and the ban.","rubricLabels":["The line starting \"Up for renewal:\" shows 40 x $5,000 = $200,000 and the line starting \"Known churn:\" shows 2 x $5,000 = $10,000","The line starting \"Expected renewed:\" shows ($200,000 - $10,000) x 90% = $171,000","The line starting \"Expected loss:\" shows $200,000 - $171,000 = $29,000 ($10,000 known plus $19,000 expected), and the output never mentions the account team's goal of renewing all 40"]}