Skip to main content

This is a test site with dummy HMRC services. Do not enter real personal information. How it works.

Features

The calculator is always on. The Budget Payment Plan amount and customer accounts are separate optional features. Either, both or neither can be installed. An administrator can switch them off.

Self Assessment calculator

Always on

Works out the tax a customer owes for a tax year, and what to pay by 31 January and 31 July. It covers Income Tax, National Insurance, Capital Gains Tax, student loans and charges.

Tax years 2023 to 2024 up to 2027 to 2028

Every rate and allowance is taken from GOV.UK or legislation.gov.uk and checked by tests against the published pages.

Built and tested See it: tax years 2023 to 2024 up to 2027 to 2028

Every kind of income on a tax return

Employment, self-employment, partnerships, UK property, Rent a Room, pensions, state benefits, interest, dividends, foreign income, trusts, life policy gains and capital gains.

Built and tested See it: every kind of income on a tax return

Reliefs and allowances

Personal Allowance taper, Marriage Allowance, Blind Person's Allowance and Married Couple's Allowance, set against income in the way that gives the lowest tax. Gift Aid, pension relief and the annual allowance charge. Investment schemes, qualifying loan interest, losses and farmers' averaging.

Built and tested

Charges and special cases

Class 2 and Class 4 National Insurance, Scottish Income Tax, the High Income Child Benefit Charge, and student and postgraduate loans. Also non-residents, the remittance basis and the 4-year foreign income and gains regime.

Built and tested

What to pay and when

The balancing payment and payments on account, including the rule for tax collected through a tax code. Collecting tax through a tax code, and late payment penalties and interest.

Built and tested

Question pages

One question per page, check your answers, a result with the working, a timeout warning, and no JavaScript needed.

Built and tested See it: question pages

Take-home pay calculator

Pay after Income Tax, National Insurance, student loans and pension contributions.

Built and tested See it: take-home pay calculator

Calculator API

JSON API for software: full and quick calculations, checking a request, tax rates, penalties and interest, and company car benefit.

Built and tested See it: calculator api

Answers filled in from HMRC records

With the customer's permission, answers are filled in from HMRC records: pay and tax, State Pension, CIS deductions and payments on account. Also Child Benefit, interest, student loan plan and Marriage Allowance. An administrator chooses which, and whether customers confirm them.

Built, needs access to go live

Company car details from DVLA

The car's fuel type and CO2 emissions are looked up from its registration number.

Built, needs access to go live

More tax tools

Optional feature

Separate features, each switched on and off by an administrator, and for each organisation and way of use: questions one page at a time, a result, and an API. An organisation's app can also hand any tool to the calculator and get the result back.

Check if you need to send a tax return

Self-employment over £1,000, partnerships, rent over £10,000 (or £2,500 after expenses), savings interest over £10,000, Capital Gains Tax, the High Income Child Benefit Charge and more, with the deadlines, and what to tell HMRC another way if not.

Built and tested See it: check if you need to send a tax return

Check your PAYE tax

Whether an employee or pensioner paid too much or too little through PAYE, like HMRC's P800, and how a refund is paid or what they owe is collected (tax code or Simple Assessment).

Built and tested See it: check your paye tax

Capital Gains Tax on a UK home within 60 days

The gain, Private Residence Relief for the time it was a home and the final 9 or 36 months, losses, the allowance and the rate from an estimate of the year's income; whether to report, and the tax to pay within 60 days.

Built and tested See it: capital gains tax on a uk home within 60 days

Directors' salary or dividends

Five ways of taking a company's profit, with Corporation Tax (and marginal relief), employer's and employee's National Insurance, Employment Allowance and Income Tax, and what the director keeps.

Built and tested See it: directors' salary or dividends

Tax on buying land or property

Stamp Duty Land Tax (England and Northern Ireland), LBTT (Scotland) and Land Transaction Tax (Wales), each offered on its own: residential and non-residential rates, first-time buyers, owning more than one home, non-UK residents and new leases.

Built and tested See it: tax on buying land or property

Corporation Tax

A company's Corporation Tax for an accounting period with Marginal Relief, associated companies and short periods, and when to pay and send the return.

Built and tested See it: corporation tax

VAT

Whether and when to register, a VAT return's boxes 1 to 9, the Flat Rate Scheme compared with standard accounting (and when a business must leave it), and whether a business must or can cancel its registration, each offered on its own.

Built and tested See it: vat

Payroll for employers

An employee's pay for a pay period: PAYE from any tax code (cumulative or week 1 / month 1, Scottish, K codes), National Insurance, student loans and a workplace pension, and the cost to the employer.

Built and tested See it: payroll for employers

Partnership profits (SA800)

A partnership's profit shared between up to 8 partners with salaries, interest on capital and profit shares (a loss shared the same way), each partner's estimated tax on their share, and the return deadlines.

Built and tested See it: partnership profits (sa800)

Trust Income Tax (SA900)

Discretionary trusts at 45% and 39.35% (and 47% on property and savings income from 2027 to 2028) with trust management expenses and the tax-free amount shared between a settlor's trusts, and interest in possession trusts, for the Trust and Estate Tax Return.

Built and tested See it: trust income tax (sa900)

Benefits

Child Benefit for a year with the High Income Child Benefit Charge, and an estimate of Universal Credit: the standard allowance, children, disability, caring, childcare and housing, the work allowance and 55% taper, savings, and the benefit cap with who it does not affect and its 9-month grace period. Tax credits ended on 5 April 2025.

Built and tested See it: benefits

Inheritance Tax

The tax on an estate with the residence threshold and its taper, a late spouse's unused thresholds, exemptions, Business Relief and Agricultural Relief with the £2.5 million allowance from April 2026, the 36% rate with gifts to charity, and gifts in the 7 years before death with taper relief.

Built and tested See it: inheritance tax

Ways to use the calculator

Always on

Choose which parts of the calculator are used and how: full question pages, question pages inside another app, or the API. The service has its own settings, and so does each organisation.

Parts that can be switched on and off

29 parts, such as pay, self-employment, property, savings, dividends, capital gains and student loans, or a ready-made set such as Basic Income Tax. Questions for parts that are off are not asked, and the API refuses their fields.

Built and tested

The service's own settings

The service administrator chooses the parts, whether the pages and the API are open, where data is read automatically and what the result shows.

Built and tested See it: the service's own settings

Each organisation's own settings

With customer accounts, each organisation has its own parts, ways of use, reading of answers and result. The service administrator or the organisation's own administrators choose them.

Built and tested See it: each organisation's own settings

Reading answers for each part

Each part records can fill, such as pay or State Pension, has 3 choices. The customer enters the answers, or they are read and the customer checks them, or they are read without asking. An organisation also chooses whether customers check what its app sends.

Built and tested See it: reading answers for each part

Tax so far this year

Customers, apps and the API work out the tax on the income so far this tax year, what is already paid and a forecast for the whole year. Pay so far can come from HMRC records. Each organisation chooses where it is offered.

Built and tested See it: tax so far this year

Filling in answers from a document

For pay, property, dividends, savings interest and pension contributions, customers can upload a PDF such as a P60 instead of typing. The answers are filled in for them to check, and the document is not kept. Each part is switched on in the settings. Digital PDFs are read on the service itself and never sent to an AI model: a P60 by the rows HMRC's P60 specification sets out, other statements by their usual wording. Scans and photos are not read, and no document is asked for where HMRC records already gave the figures. This test site reads only its sample documents.

Built and tested See it: filling in answers from a document

Notifications to an organisation's app

When a customer finishes question pages inside an app, the app is told straight away with a signed notification (Standard Webhooks). It holds no figures, and is tried again if the app does not answer.

Built and tested See it: notifications to an organisation's app

An organisation's own address

The full question pages for an organisation's customers, at /o/<name>, with its settings.

Built and tested See it: an organisation's own address

Question pages inside another app

An app starts a journey with what it knows. The customer answers the rest and goes back to the app, which collects the tax and what to pay when. The header links reload the page, so the customer never leaves the app's journey by them.

Built and tested See it: question pages inside another app

Journey planner

An app sends what it knows about its customer, such as the tax year, their kinds of income and figures, and fixed, written rules set up the journey: which parts and questions, whether HMRC records are offered and whether the customer checks the app's answers, each with its reason. A plan only ever narrows the organisation's settings. An app with its own screens gets one page of questions at a time, checked as the calculator's pages check them, then the calculation. No AI model is used.

Built and tested See it: journey planner

Calculations through the API, whole or one part at a time

A full calculation, or one part from the least an app has, for example pay alone for basic Income Tax.

Built and tested See it: calculations through the api, whole or one part at a time

Reading data automatically, for each way of use

Whether HMRC and DVLA data is read, chosen separately for the full pages, pages inside an app and the API. Each part then has its own choice. Tested with the dummy services; going live needs HMRC production access.

Built, needs access to go live

Organisation administrators

People the service administrator names sign in with GOV.UK One Login or a password, and change their organisation's settings and API keys.

Built and tested See it: organisation administrators

Making Tax Digital for Income Tax helpers

Optional feature

Helpers that work alongside a customer's Making Tax Digital software and HMRC. They never send anything to HMRC: only HMRC-recognised software sends quarterly updates. Each organisation chooses which helpers it offers, and for which way of use.

When Making Tax Digital starts

From self-employment and property income for 2024 to 2025, 2025 to 2026 and 2026 to 2027, with exemptions (automatic or to apply for, and how long they last) and what this year's income is heading for. From an estimate, nothing is asked twice.

Built and tested See it: when making tax digital starts

Tax so far after a quarterly update

A quarterly update's totals in HMRC's categories become the tax so far, a forecast for the year, and a weekly or monthly amount to put aside towards the next bills.

Built and tested See it: tax so far after a quarterly update

Deadlines and penalties

Standard or calendar update periods and their deadlines, penalty points (4, or 2 for volunteers; none for 2026 to 2027 updates) and when they are removed, and late payment penalties.

Built and tested See it: deadlines and penalties

Email reminders

Customers with an account can have an email 14 and 3 days before each deadline, through GOV.UK Notify.

Built, needs access to go live See it: email reminders

Checks before an update is sent

Totals that went down, negative amounts, costs that cannot usually be claimed, sending too early or late, the £1,000 allowances, and jointly let property.

Built and tested See it: checks before an update is sent

The year-end picture

The fourth update's totals go into the calculator's own questions, which ask for everything else, and the estimate lists what a tax return usually also needs.

Built and tested See it: the year-end picture

HMRC's estimate explained

HMRC's tax calculation (Individual Calculations API) explained step by step and compared with this calculator's from the same income. Tested with the dummy HMRC; going live needs HMRC production access.

Built, needs access to go live See it: hmrc's estimate explained

Clients for accountants

Each client's start date, exemption, next deadline, what is late and penalty points, through the API and on the organisation's own page.

Built and tested

Records sorted into HMRC's categories

A bank statement sorted into the categories of a quarterly update, with totals for each update period to download. Anything that could be personal is listed to check.

Built and tested See it: records sorted into hmrc's categories

Payment plan amounts

Optional feature

Works out a fixed weekly or monthly amount to pay towards the next Self Assessment bills, for example through HMRC's Budget Payment Plan. Each organisation chooses where it is offered. Any app uses it the same way, with an API key: HMRC's Budget Payment Plan service would be one more organisation.

Payment plan API

An app sends what it knows (the bills on the account, last year's return, this year's income) and gets the forecast and amount straight back. Nothing is stored.

Built and tested See it: payment plan api

Question pages inside an app

An app starts a journey of kind 'payment_plan', the customer answers questions here, and the app collects the result. Only organisations with an API key can start journeys, customers can only be sent back to their registered addresses, and a link works in one browser.

Built and tested

Reads HMRC's Self Assessment account

Understands the balance and transactions format of HMRC's Self Assessment Accounts API: overdue amounts, credit and each charge.

Built and tested

Forecast of this year's tax

From income so far, last year's figures, seasonal patterns, the customer's own estimate or bank transactions, with a low and high range.

Built and tested

The plan

Next bill or all bills in the next 12 months, monthly or weekly, a chosen day, paused months and a safety margin. Direct Debit dates allow for bank holidays and the £20 million limit.

Built and tested See it: the plan

Who can use it

Customers with overdue tax are told they cannot set up a plan yet and where to get help.

Built and tested

Customer accounts and organisations (SaaS)

Optional feature

Customers keep their figures and see their forecast worked out again during the year. Organisations such as accountants use an API for their clients. It is separate from payment plan amounts.

Sign in with GOV.UK One Login

OpenID Connect with signed client assertions and checked ID tokens. The account keeps its own ID and stores the One Login ID against it.

Built, needs access to go live See it: sign in with gov.uk one login

Accounts with an email address and password

Long passwords, lockout after 5 wrong attempts, and pages that do not reveal who has an account.

Built and tested See it: accounts with an email address and password

Emails through GOV.UK Notify

Confirm your email address, reset your password, 'you already have an account' and 'your forecast has changed'. Emails wait and are tried again if Notify cannot be reached.

Built, needs access to go live

Figures from HMRC

Pay and tax so far this year from employers, and the bills and credit on the Self Assessment account, with the customer's permission.

Built, needs access to go live

Bank transactions

Upload a bank statement CSV. Clearly identified income and costs are turned into totals; others are listed to check. Transactions are not kept.

Built and tested

Forecast dashboard

Forecast tax with a range, the next bills, the amount to put aside each week or month, and every forecast so far.

Built and tested

Kept up to date

A daily job works out forecasts again when rates change or a deadline passes. It emails customers whose amount changes, and deletes accounts not used for 2 years.

Built and tested

Customers' own information

Download everything as JSON, delete the account, and choose whether to get emails.

Built and tested

Organisations' API

API keys (stored as hashes), clients, profiles, figures, forecasts, history and usage, with rate limits, monthly quotas and suspension. Each organisation only ever sees its own clients.

Built and tested

Protecting stored information

Figures and email addresses are encrypted (AES-256-GCM), keys can be rotated, and PostgreSQL is used on hosts that do not keep files.

Built and tested

Running the service

Always on

How the service is run, switched and kept safe.

Plug-in features

Payment plan amounts, tax so far, the Making Tax Digital helpers, document reading and customer accounts can each be installed or left out, and an administrator can switch them off and on. The calculator works the same without them.

Built and tested

Administration

Switch features and HMRC data feeds, try a rate change ('what if'), reload rates, manage organisations and see the audit log.

Built and tested See it: administration

Security

CSRF tokens, a strict content security policy, secure cookies, a 15-minute session timeout and HSTS.

Built and tested

Accessibility

GOV.UK Frontend 6.5 and HMRC Frontend 7.38 components, checked with the GDS-Check accessibility scanner.

Built and tested

Shared storage

With PostgreSQL, sessions, settings, the audit log, journeys and rate limits are shared. The service then survives restarts and can run on more than one server.

Built and tested

Hosting on a small shared server

The test site runs on an Oracle Cloud Always Free machine beside other apps, as a guest: its own user, its own PostgreSQL database, at most 400 MB of memory and a lower priority than the main service there, behind nginx with HTTPS. Each release is copied there and checked end to end (scripts/deploy_vm.sh).

Built and tested See it: hosting on a small shared server

Background work inside the service

Answers in sessions unused for 15 minutes are deleted every 5 minutes. Forecasts are worked out again, emails sent and old accounts deleted every day, and failed notifications tried again, inside the web service. No separate scheduled service is needed. A service that was stopped catches up when it starts again. Administrators see when each ran and can start it.

Built and tested See it: background work inside the service

Requirements traced to tests

Each of the 213 acceptance criteria in the Business Requirements Document has an ID, and at least one test names it. The release pipeline stops a release if a criterion has no test that passed, and reports each criterion with its tests.

Built and tested

Nightly live check

An agent on the team's computer checks the live site every night through the job queue. It checks customers, organisations, their apps and notifications, the daily work and the database. It uses no GitHub minutes.

Built and tested

Rates watch

An agent checks every week whether GOV.UK has changed a page the rates came from or published a new tax year's rates. It also looks for a new Finance Act on legislation.gov.uk. It drafts any change for a person to approve and never changes the rates itself.

Built and tested

Demonstration services

Optional feature

Dummy versions of the services this one connects to, with test customers, so every feature can be tried. For test sites only.

Dummy GOV.UK One Login

Works like One Login's integration environment: discovery, signed ID tokens, user details and signing out.

Built and tested See it: dummy gov.uk one login

Dummy HMRC APIs

OAuth sign-in and permission, and the employments, state benefits, CIS, Self Assessment account and tax calculation APIs in HMRC's formats.

Built and tested See it: dummy hmrc apis

Dummy GOV.UK Notify

Checks the signed token like Notify does, and shows emails in an inbox instead of sending them.

Built and tested See it: dummy gov.uk notify

Dummy DVLA

Answers vehicle enquiries in DVLA's format.

Built and tested

Dummy Budget Payment Plan service

An app belonging to the example organisation 'Example Budget Payment Plan Service', using the calculator like any other app: it signs the customer in, reads their account and gets the amount with its API key, both ways.

Built and tested See it: dummy budget payment plan service

Dummy partner app

A payroll app belonging to an example organisation. It puts the question pages inside the app and uses the API.

Built and tested See it: dummy partner app

Dummy bookkeeping app

Making Tax Digital software belonging to an example organisation, used by the test customer Leah Park. It sends her to the Making Tax Digital helpers with her quarterly updates, and reads HMRC's calculation from the dummy HMRC.

Built and tested See it: dummy bookkeeping app

Example organisations

Organisations that each use the calculator a different way, with a test customer who administers them.

Built and tested See it: example organisations

Still needed to go live

These need accounts, agreements or work from people outside the project. Everything that can be built has been built and tested with the dummy services.

A live GOV.UK Notify service
Notify needs an organisation to apply for a live service and set up the 4 email templates.
Registration with GOV.UK One Login
The service must be registered with One Login to get a client ID and register its public key.
HMRC production access
HMRC Developer Hub approval for production, and the internal service addresses for Child Benefit, interest, student loan plan and Marriage Allowance.
Agreement with any app that sends customers here, such as HMRC's Budget Payment Plan service
Each is an organisation with its own API key, settings and the addresses customers go back to, and a data sharing agreement.
Fraud prevention headers checked
With HMRC's Test Fraud Prevention Headers API.
Welsh translations
From HMRC's Welsh Language Unit.
Data protection sign-off
The draft data protection impact assessment completed and signed off, a retention decision and a penetration test.
Specialist accessibility audit
A WCAG 2.2 AA audit and research with users of assistive technology.
Research on paper documents
Whether customers mostly have their P60s and statements as PDFs or on paper. Digital PDFs are read on the service itself; only if most are on paper would scans need reading (OCR), also on the service itself.
Hosting for a live service
The test site shares a small free machine with other apps, with no backups of its database. A live service needs hosting agreed with whoever runs it, with backups and a processor contract.
Checked against HMRC's own calculation
The hand-worked and random customers run through HMRC's Individual Calculations API in HMRC's sandbox, which needs HMRC developer access.

Is this page not working properly? (opens in new tab)