Skip to content

Commit

Permalink
Add 2024/25 rates after Spring Budget 2024 (#17)
Browse files Browse the repository at this point in the history
* Add 2024/25 rates after Spring Budget 2024

* Update types
  • Loading branch information
sgb-io authored Mar 10, 2024
1 parent 1434a7f commit 4664165
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 4 deletions.
28 changes: 25 additions & 3 deletions src/hmrc.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,16 +47,15 @@ const taxRates: Record<TaxYear, TaxRates> = {
STUDENT_LOAN_PLAN_2_WEEKLY_THRESHOLD: 524,
STUDENT_LOAN_PLAN_4_WEEKLY_THRESHOLD: 487.98,
STUDENT_LOAN_PLAN_5_WEEKLY_THRESHOLD: 480, // Note: this was only introduced in 2023/24, so technically isn't relevant to 22/23
STUDENT_LOAN_POSTGRAD_WEEKLY_THRESHOLD: 403.84,
STUDENT_LOAN_REPAYMENT_AMOUNT: 0.09, // People on plans 1 or 2 repay 9% of the amount you earn over the threshold
STUDENT_LOAN_POSTGRAD_WEEKLY_THRESHOLD: 403.84,
STUDENT_LOAN_REPAYMENT_AMOUNT_POSTGRAD: 0.06, // People on postgrad plans repay 6% of the amount you earn over the threshold
// National Insurance
NI_MIDDLE_RATE: 0.1325,
NI_UPPER_RATE: 0.0325,
NI_MIDDLE_BRACKET: 242,
NI_UPPER_BRACKET: 967,
},
// As of 6th April 2023
"2023/24": {
// Income tax
DEFAULT_PERSONAL_ALLOWANCE: 12_570,
Expand All @@ -71,15 +70,38 @@ const taxRates: Record<TaxYear, TaxRates> = {
STUDENT_LOAN_PLAN_2_WEEKLY_THRESHOLD: 524,
STUDENT_LOAN_PLAN_4_WEEKLY_THRESHOLD: 532,
STUDENT_LOAN_PLAN_5_WEEKLY_THRESHOLD: 480,
STUDENT_LOAN_POSTGRAD_WEEKLY_THRESHOLD: 403,
STUDENT_LOAN_REPAYMENT_AMOUNT: 0.09, // People on plans 1, 2, 4 + 5 repay 9% of the amount you earn over the threshold
STUDENT_LOAN_POSTGRAD_WEEKLY_THRESHOLD: 403,
STUDENT_LOAN_REPAYMENT_AMOUNT_POSTGRAD: 0.06, // People on postgrad plans repay 6% of the amount you earn over the threshold
// National Insurance
NI_MIDDLE_RATE: 0.1, // Changed from 12% to 10% on 6th Jan 2024 (out of normal cycle)
NI_UPPER_RATE: 0.02,
NI_MIDDLE_BRACKET: 242,
NI_UPPER_BRACKET: 967,
},
"2024/25": {
// Income tax
DEFAULT_PERSONAL_ALLOWANCE: 12_570,
HIGHER_BRACKET: 50_270,
ADDITIONAL_BRACKET: 125_140,
BASIC_RATE: 0.2,
HIGHER_RATE: 0.4,
ADDITIONAL_RATE: 0.45,
PERSONAL_ALLOWANCE_DROPOFF: 100_000,
// Student loan repayments
STUDENT_LOAN_PLAN_1_WEEKLY_THRESHOLD: 480.57,
STUDENT_LOAN_PLAN_2_WEEKLY_THRESHOLD: 524.9,
STUDENT_LOAN_PLAN_4_WEEKLY_THRESHOLD: 531.92,
STUDENT_LOAN_PLAN_5_WEEKLY_THRESHOLD: 480,
STUDENT_LOAN_REPAYMENT_AMOUNT: 0.09, // People on plans 1, 2, 4 + 5 repay 9% of the amount you earn over the threshold
STUDENT_LOAN_POSTGRAD_WEEKLY_THRESHOLD: 403.84,
STUDENT_LOAN_REPAYMENT_AMOUNT_POSTGRAD: 0.06, // People on postgrad plans repay 6% of the amount you earn over the threshold
// National Insurance
NI_MIDDLE_RATE: 0.08,
NI_UPPER_RATE: 0.02,
NI_MIDDLE_BRACKET: 242,
NI_UPPER_BRACKET: 967,
},
};

export const getHmrcRates = (taxYear?: TaxYear) => {
Expand Down
2 changes: 1 addition & 1 deletion src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ export interface IncomeTax {

export type StudentLoanPlan = 1 | 2 | 4 | 5 | "postgrad";

export type TaxYear = "2022/23" | "2023/24";
export type TaxYear = "2022/23" | "2023/24" | "2024/25";

0 comments on commit 4664165

Please sign in to comment.