Repository navigation
Autumn Budget 2026 trading allowance explainer - #1463
Conversation
BlogLineChart.tsx draws series against a numeric x axis, with step series, markers labelled in a strip above the plot, an x axis format, a y axis fitted to the data on request, and a y axis width that follows the tick labels. blogChartUtils gains a thousands separator, a niceTicks option that leaves zero out, and validFormat. Bar charts take "valueLabels": false when several series make the labels overlap. chart-standards.md documents both. Used by the Budget 2026 posts (#1457, #1459). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The first x tick label no longer touches the lowest y tick label at the plot's corner, and the legend sits clear of the x axis title. Checked on every chart in the PTA post at 1280 and 375 pixels wide. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Trading allowance: the Universal Credit case's inputs, and a correctionThis follows up REVIEW_NOTES on #1460, now that the post is here. My review is #1460 (comment).
🤖 Generated with Claude Code |
|
Max revised the rounding rule at about 15:55Z: whole pounds everywhere, worked household tables included, with pence only where a post spells out a formula. My earlier comment said pence could stay in worked tables, and I've corrected it. In the sole trader table, that makes:
The reductions (£120 and £520) are unchanged. 🤖 Generated with Claude Code |
…into docs/uk-budget-2026-trading-allowance
…ne/policyengine-app-v2 into docs/uk-budget-2026-income-tax
…into docs/uk-budget-2026-trading-allowance
…same scope Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…6-trading-allowance
…sting Review fixes: the 93% income tax share holds from 2028-29 (the line is zero before), NICs is spelled out at first use, the other lines carry the table's own labels in quotes, and the policy costings are noted as showing Table 6.1's rounded figures. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Costing section re-based on the OBR's policy breakdown: two commits, one OK needed@hua7450 Max's rule for the Budget posts is now to cite primary sources. Compare with the OBR's line for the measure that matches what we model, give Table 6.1's rounded total as context, and call it "the government's costing, certified by the OBR". I pushed two commits to this branch: f80884d21 and, after an independent review, 1c43e6148. I also merged #1460's latest commit (4796551) forward, with no rebase. Only the costing text changed. No household figure, chart or other section moved. What changed
Sources, checked against the files
Review: an independent reviewer (GPT-6.1 Sol) checked the figures, labels, certification and the rest of the article for leftover wording. Its article points are in 1c43e61:
Ask: is this costing section OK to merge as it stands at 1c43e61? Your earlier OK covered the post before this change. Merge order is unchanged: #1460 first, then this. 🤖 Generated with Claude Code |
Production doesn't show the trading allowance until the dashboard's next deploy, so the line no longer says the dashboard has "this" measure; same wording as the property post's fix. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
@hua7450 One more line, in f6af7fd7f. It applies the same fix Max made to the property post's dashboard line (#1460, 0620d73). Line 10 now reads "Our Autumn Budget 2026 dashboard is where we publish estimates for the Budget measures we model." It used to say "for this and the other Budget measures". The production dashboard doesn't show the trading allowance until the dashboard's next deploy. The ask: one OK that covers both the costing section above (1c43e61) and this line, at f6af7fd. #1460 merges tonight. After that I'll merge 🤖 Generated with Claude Code |
|
@MaxGhenis OK to merge the trading allowance post with the content at f6af7fd, including both the revised government's costing section and the updated dashboard sentence. Please follow the agreed order: #1460 first, then retarget this PR to |
# Conflicts: # app/src/data/posts/articles/uk-autumn-budget-2026-property-income-tax.md # app/src/data/posts/posts.json
MaxGhenis
left a comment
There was a problem hiding this comment.
Approving the trading allowance post at f6fa173 (main merged in, no rebase).
- Max's yes, relayed by the Budget coordinator: "Yes, merge after #1460 (Recommended)". #1460 merged as 018ea75.
- Ziming's OK on the content at f6af7fd (6480814967). The trading article and cover at this head are byte-identical to that commit.
- Diff against main: only the trading article, its cover and its posts.json entry.
Checked:
- Household figures: every household figure was reproduced independently with PolicyEngine UK 2.151.0 and the October forecast at dashboard #290's head (5d18a5e2). That covers the side-business, sole-trader and lone-parent examples and the 18 chart points.
- National figures: the post carries no PolicyEngine national figures.
- Government's costing: the post compares with the government's costing, certified by the OBR, on its "Income tax" and "NICs" lines (OBR Table 1.1, measure 15). Those lines are £221m, £165m, £171m and £178m from 2028–29. Table 6.1's rounded total sits beside them as context. The figures were checked against the OBR file and reviewed independently, and every finding is fixed.
- Reach figures: neither the post nor the analysis folder publishes a reach, poverty, inequality or people-affected figure for trading.
- Rounding: whole pounds in every table, sentence case.
- CI:
gh pr checksexits 0 at this head.
🤖 Generated with Claude Code
…; the CA measure's total The trading allowance (#1463) and Carer's Allowance taper (#1464) paragraphs link their explainers, whose figures match ours. The Carer's Allowance comparison calls £38 million and £79 million the measure's total in the OBR's table, not the official figure (Sol r4 finding 6, agreed by the coordinator); the official comparison stays the Welfare inside cap line. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Post-merge audit of the trading allowance post (article on Must fix
Should fix
Nice to have
Verified as correct
Not checked: OBR Table 1.1 (obr.uk 403; the figures are consistent with Table 6.1's £5m rounding), gross receipts in the population data, and the full text of UC reg 64. 🤖 Generated with Claude Code |
* Add the post-Budget written briefing for the Autumn Budget 2026 Draft from the dashboard's test publication, manifest revision 43. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Attribute the comparison notes' own figures to the dashboard's runs Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: cut run-only figures from the comparison notes, add scope lines Dashboard links move to /uk/budgets/autumn-2026. The "why each differs" bullets keep each reason from uk-autumn-budget-dashboard-2026#296 and drop the figures that came from the seats' own runs (#296 is still a draft); derived gaps (manifest less Table 6.1) and official figures stay. Adds the PTA gaps by year, the trading allowance's 2027-28 gap as a labelled inference, one line on the package's scope beside the decile and average-household figures, and drops the description of what the Treasury's distributional analysis covers until it is verified. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: drop the decile chart's value labels, which overlap Three series of ten bars put the labels on top of each other at the top deciles; the tooltip and Table 4 give the values. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: answer review r1 and the coordinator's rulings - Say plainly that the figures are provisional (key results, provenance line and card description); the checker ties this to manifest status. - The energy payment and fuel duty notes keep their unexplained remainders, without the run-only figures. - Net income: changes include changes in VAT and fuel duty; deciles use the HBAI definition and hold about a tenth of people. - Company car rates are capped at 40%; Table 1 drops the fuel duty rate. - The Treasury's 2027-28 analysis: which measures it covers, as verified against its paragraph 1.4. - People shares rounded (about 94%, 3%, 6% and 1%), from the age table. - PTA 2030-31 and 2031-32: the Treasury's policy costing note gives no reason for the official figures. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: round the key results' people shares to whole per cent Prose shares are whole per cent (about 99%, 4% and 6%); Table 5 keeps one decimal. All come from the age table's "all" row. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: answer review r2; name manifest revision 44 - Pension Tax Allowance: eligibility includes people reaching State Pension age during the tax year (the Treasury's explainer). - Revision 44 of the test publication changes only the flat summary files; every artifact the post uses is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: restore the dashboard's comparison-note figures; release manifest revision 17 Each policy's "why it differs" bullet now carries the figures from the dashboard's notes as merged in #296 and #298 and rendered on its Public finances view (all seven, in every year): the HEP's Barnett share and unitemised remainder, the electricity VAT base, fuel duty's scaled cost and the 5p timing, the PTA's income tax cost and gainers, property's Self Assessment timing and incorporation, the trading allowance's percentages, and Carer's Allowance's income tax. The 2027-28 trading allowance gap now cites the comparison card's timing caveat instead of our inference. The figures follow release manifest revision 17, in which every entry is approved, so the provisional wording leaves the article and the card. Every figure matches revision 44's. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: hold poverty; give no reason for the PTA and Carer's Allowance gaps On the coordinator's cautions: - Poverty stays out until production is live and María has ruled on the unfloored poverty columns (dashboard #290); the key result and the poverty paragraph are held, and the section is now Inequality. - Carer's Allowance: the note's income tax reason is being corrected by its seat, so the bullet keeps our own figures (the tax on the higher allowance, and the cost before it) and gives no reason for the gap. - Pension Tax Allowance: the note's data reason may be dropped, so the bullet gives our income tax cost and gainers without it, and no longer says the official costing counts income tax only. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: compare with the OBR's matching lines, Table 6.1 as context Max's rule, relayed by the coordinator: cite the primary source. Each official figure is now the line in the OBR's detailed forecast table 1.1 that matches what we model (the government's costing, certified by the OBR; fuel duty is the government's estimate, which the OBR used but could not certify). Table 6.1's rounded totals stay as context rows in Tables 3, 6 and 7, and the note under Table 6 names the other lines by the table's labels. - VAT: 14% and 19% above the VAT line; the Table 6.1-based "within about 4%" is dropped. - Property: 9% to 11% above the income tax line from 2029-30; the behaviour and the Self Assessment timing now cite the EFO (paragraph 3.17, Table 4.4). - Trading: against income tax and NICs, 27% to 47% below. - HEP: against £2,627 million. - PTA: income tax against the OBR's income tax line (coordinator's text); the net-versus-Table 6.1 sentence is replaced. - Carer's Allowance: the OBR's breakdown (coordinator's text), then ours. - Intro to the reasons now says the notes use Table 6.1's totals, and points at Table 6 (Sol r3). The provenance line names the EFO (Sol r3). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: Table 2 on the OBR's measure totals; PTA about 5% lower Table 2 (measures we don't model) now gives each measure's total from the OBR's detailed forecast table 1.1, to the £ million, with Table 6.1's rounded totals as context in the source line. The Pension Tax Allowance comparison says about 5% lower in 2027-28, from the printed figures. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: exceeds for is above; property timing as the dashboard words it Max's style rule: the VAT and property comparisons now say ours exceeds the OBR's line by the gap, rather than is the gap above it. The property bullet says the OBR adds almost no Self Assessment receipts in 2027-28, as the dashboard's note now does, still cited to EFO Table 4.4 (0.0 in 2027-28). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: link the property income tax explainer The property paragraph now links Ziming's explainer (merged on main), as the other measures link theirs; its figures match ours (£399m in 2027-28, the OBR's £394m income tax line in 2029-30). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: active voice (Max's voice sweep) Seven wording-only changes from the voice-sweep session: we leave out, we rank, timing, we estimate less fully, falls below (energy payment and trading allowance gaps), we hold back. No figure, link or claim changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: gaps from the printed figures; energy payment remainder The VAT, fuel duty and trading allowance gaps now follow from the figures Table 6 prints (£57m, £273m, £46m), as the PTA's do, so a reader can redo them and they match the dashboard's notes on the OBR lines (#303). The energy payment's remainder now rests on the Budget's own count: at £100 each, up to 20 million households take up to £2,000 million; neither the OBR nor the Budget itemises the rest. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: what we're improving Max's approved text (28 Oct, "Use the widened text", relayed by the coordinator), verbatim under its own heading before the methodology: the update later this week and the work beyond it. Poverty stays held. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: link the trading allowance and Carer's Allowance explainers; the CA measure's total The trading allowance (#1463) and Carer's Allowance taper (#1464) paragraphs link their explainers, whose figures match ours. The Carer's Allowance comparison calls £38 million and £79 million the measure's total in the OBR's table, not the official figure (Sol r4 finding 6, agreed by the coordinator); the official comparison stays the Welfare inside cap line. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: active voice, reduced passives included Max's rule (28 Oct): active voice in all writing, and reduced passives count. "Certified by the OBR" becomes "which the OBR certified"; "is extended" becomes "runs three months longer"; "capped at", "cut from", "kept for a year" and "set 1 point above" in Tables 1 and 2 become active or noun phrases; "rounded to", "calibrated before", "quoted from" and "linked above" name who acts. Every number, name and claim is unchanged. The Nuffield credit stays as the fixed formula the coordinator kept, and "What we're improving" stays as Max approved it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: finish the active-voice pass Twelve more sentences from the independent voice sweep, among them the deciles definition (twice), the energy payment's start, Self Assessment timing (three places) and the fuel duty scale-up. The article paraphrases the dashboard's own passive note wording, and the checker traces the new phrases to the same rendered notes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Briefing: answer the r5 and r6 wording findings - The notes' basis now reads "The notes explain the comparisons", true of the merged notes and of dashboard #303's (Sol r5, finding 4). - Zero VAT: Sol r6's sentence verbatim, so "rising with CPI" can't read as a claim about actual prices (r6, 1). - Energy payment: the councils' £100 million targets "the households that rising energy bills hit hardest", from the Budget's own text ("households acutely impacted by rising energy bills"), now traced to it (r6, 2). - Fuel duty: "Scaling our fuel duty cost up to..." names what we scale (r6, 3). - Carer's Allowance: "where the Scottish Government has responsibility for Carer's Allowance", Sol r6's active replacement for "is devolved" (r6, 4). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Carer's Allowance taper post: say we will update the 2030-31 estimates Adds the sentence Max approved in the briefing's "What we're improving" section, after the paragraph's dashboard sentence, as Sol's r5 review asked (finding 3). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
The Budget raises the trading allowance from £1,000 to £3,000 from April 2027. This standalone explainer covers choosing the allowance or actual expenses, including £400/£100/£0 employee examples, a £520 sole-trader gain and a £180 gain after Universal Credit adjusts.
The exclusions now explain that an employer or connected-party payment disqualifies an individual from allowance relief across relevant sources for the entire tax year, including the spouse/civil-partner and connected-partnership conditions. The wording follows HMRC guidance and ITTOIA 2005, sections 783AA and 783AO–783AQ. The dashboard introduction is accurate before and after the production switch.
The article preserves Max’s removal of obsolete national figures, keeping the Treasury-only costing table and linking to the canonical dashboard for PolicyEngine’s national estimates. Household assumptions and the missing-receipts/miscellaneous-income limitations remain explicit. No unsupported £71m sensitivity or 260,000-person count is included.
Stacked on property and shared analysis #1460; the diff remains only this article, its cover and metadata. Retarget after the base merges. Trading allowance and property #1460 are ready for review at the user’s request; savings #1466 remains a separate draft. Other authors’ main-branch post entries are preserved.
Method: pe.uk.calculate_household on policyengine 6.11.1 / UK 2.151.0 / core 3.33.3, October forecast on baseline and reform, fixed nominal 2027–28 inputs. Native line chart with exact breakpoints and £100 samples, verified at every £2.
Calculator companion: dashboard #292. Alex’s £30,000 salary / £4,000 receipts / £500 expenses case gives a £400 income-tax reduction. No claim is made that the current dashboard has an Alex preset.
Validation: primary HMRC and legislation sources checked; all monetary text, household-table rows and chart JSON unchanged from the reviewed article. The shared base passes formatting, lint, type checks and 6,571 tests (10 existing skips); the final trading article/metadata checks pass 18 tests, and merged metadata passes Prettier.
Review preview: trading allowance article.
Cover image: an original teal small-business illustration with parcels, a calculator, receipts and pound coins, generated with the built-in image tool. The 1672 × 941 WebP is 45 KB and supplies the article hero, research cards and social previews. Its prompt and checksum are recorded in the shared cover-prompts.json.
After the property/savings split, this branch merges the updated property branch forward without rebasing collaborators’ commits. Its introduction now links only the property explainer at
/uk/research/uk-autumn-budget-2026-property-income-tax, as requested in the latest review. The diff against #1460 remains the trading article, its assets and its own metadata entry. The final 18 post-metadata/chart-content tests pass; trading calculations and chart data are unchanged.