File:UK tax NIC pounds.svg
From Wikimedia Commons, the free media repository
UK_tax_NIC_pounds.svg (SVG file, nominally 522 × 383 pixels, file size: 67 KB)
[edit] Summary
| Description |
English: Charges to w:UK income tax and w:National Insurance in pounds for the tax year 6 April 2009 thru 5 April 2010. This takes account only of straightforward income tax and Class I employee NICs without contracted-out pension contributions.
Made in w:MATLAB and finished with w:Inkscape. See below for MATLAB source. According to w:HMRC, the tax and National Insurance rates and allowances for 2009/10 are [1]:
Versions for earlier tax years can be found in the upload history, where the comments indicate to which year a particular version applies. Note that there are two versions for the 2008-9 tax year owing to the mid-year changes announced by the Government.
|
||||
|---|---|---|---|---|---|
| Date |
27 April 2009 |
||||
| Source |
Own work |
||||
| Author | |||||
| Permission (Reusing this image) |
See below. Licensing choices are applicable to both image and MATLAB source code. |
The graph is drawn with the following MATLAB script, known to work in version 7. This MATLAB script is also available for use under the licenses shown below.
function [it_pounds, it_pct, nic_pounds, nic_pct, total_pounds, total_pct, takehome_pounds] = tax(gross, tax_rates, tax_widths, nic_rates, nic_widths, plot_all) %TAX: Compute the pounds and percentage cost of taxable pay of income tax %and National Insurance. (Or just tax in places without NI). % %[it_pounds it_pct nic_pounds nic_pct total_pounds total_pct takehome_pounds] = tax(gross, tax_rates, tax_widths, nic_rates, nic_widths, plot_all) % %Inputs: % gross: Vector of taxable pay amounts to compute all outputs for. % tax_rates: Percentages of tax rates matching entries in tax_widths. % tax_widths: Width in pounds of each tax band, ended by Inf. NOT the % income levels at which they begin to apply. For example, for 2007-08: % % Personal allowance, or 0% band = £5225. % 10% band = First £2230 taxable = £2230 in width. % 22% band = £2230 - £34600 taxable = £32370 in width. % 40% band = £34600 - (unlimited) taxable = £Inf in width. % % Therefore, tax_rates and tax_widths are set up as follows: % % tax_rates = [ 0 10 22 40]; % tax_widths = [5225 2230 32370 Inf]; % % nic_rates: As tax_rates. (Omit if no NIC-equivalent needed). % nic_widths: As tax_widths. (Omit if no NIC-equivalent needed). % plot_all : Single boolean true/false whether to draw the output plot. % %Outputs: % These all have obvious names, and each produce a vector with entries % corresponding to the entries of input 'gross'. for g = 1:length(gross) it_pounds(g) = tax_calc(gross(g), tax_rates, tax_widths); it_pct(g) = 100*it_pounds(g)/gross(g); nic_pounds(g) = tax_calc(gross(g), nic_rates, nic_widths); nic_pct(g) = 100*nic_pounds(g)/gross(g); total_pounds(g) = it_pounds(g) + nic_pounds(g); total_pct(g) = 100*total_pounds(g)/gross(g); takehome_pounds(g) = gross(g) - total_pounds(g); end if exist('plot_all', 'var') && plot_all %Plots for amounts in pounds figure; plot(gross, it_pounds, 'b', gross, nic_pounds, 'r', gross, total_pounds, 'k', gross, takehome_pounds, 'g'); set(get(gca, 'Children'), 'LineWidth',2); set(gca, 'XMinorTick', 'on', 'YMinorTick', 'on'); legend('Income tax', 'National insurance', 'Combined', 'Take home'); xlabel('Annual taxable pay, GBP'); ylabel('Annual amount, GBP'); grid on; %Plots for percentages figure; plot(gross, it_pct, 'b', gross, nic_pct, 'r', gross, total_pct, 'k'); set(get(gca, 'Children'), 'LineWidth',2); set(gca, 'XMinorTick', 'on', 'YMinorTick', 'on'); legend('Income tax', 'National insurance', 'Combined'); xlabel('Annual taxable pay, GBP'); ylabel('Percentage of taxable pay'); grid on; end %%%%Calculation engine%%%% function total_tax = tax_calc(gross, rates, widths) tax_band = 1; income_left = gross; total_tax = 0; while tax_band <= length(widths) && income_left > 0 taxable_this_band = min([widths(tax_band) income_left]); total_tax = total_tax + taxable_this_band*rates(tax_band)/100; income_left = income_left - taxable_this_band; tax_band = tax_band + 1; end
- For the 2009-10 tax year
tax_rates = [0 20 40]; tax_widths = [6435 37400 Inf]; nic_rates = [0 11 1]; nic_widths = [110*52 (844-110)*52 Inf];
[edit] Licensing
The following choices of licensing apply to both the image and also the MATLAB code presented above.
[edit] See also
File history
Click on a date/time to view the file as it appeared at that time.
| Date/Time | Thumbnail | Dimensions | User | Comment | |
|---|---|---|---|---|---|
| current | 10:42, 27 April 2009 | 522×383 (67 KB) | Splash (talk | contribs) | (corrected version of 2009-10) | |
| 23:29, 26 April 2009 | 520×381 (66 KB) | Splash (talk | contribs) | (updated for tax year 2009-10) | ||
| 23:27, 26 April 2009 | 530×396 (58 KB) | Splash (talk | contribs) | (revision for change to income tax rates announced post-Budget by Chancellor, and backdated to start of tax year for pay dates from 7 Sep 08.) | ||
| 23:25, 26 April 2009 | 532×394 (57 KB) | Splash (talk | contribs) | ({{Information |Description={{en|1=Tax+NIC pounds for 2008-9. This file will hold versions for future years also.}} |Source=Own work by uploader |Author=Splash |Date=2008-05-16 |Permission= |other_versions= }} <!--{{ImageUpload|full}}--> [) |
- Edit this file using an external application (See the setup instructions for more information)
File links
There are no pages that link to this file.
Global file usage
The following other wikis use this file:
- Usage of UK tax NIC pounds.svg on enwiki