Calculate your total landed cost, including UK Import Duty and VAT, for goods imported into the United Kingdom from outside the EU.
£
The commercial value of the goods as shown on the invoice.
£
Cost to transport the goods to the UK border.
£
If included in shipping, enter 0.
%
Determine this using the UK Trade Tariff commodity codes.
%
Standard rate is 20%. Some goods are 5% or 0%.
Please enter valid numerical values.
Customs Value (CIF):£0.00
Import Duty Payable:£0.00
VATable Value:£0.00
Import VAT Payable:£0.00
Total Tax Payable (Duty + VAT):£0.00
Total Landed Cost:£0.00
Understanding UK Import Duty & VAT
Importing goods into the United Kingdom from abroad (specifically outside the EU) involves more than just paying the supplier. HMRC (Her Majesty's Revenue and Customs) requires importers to pay Import Duty and VAT upon the arrival of goods. Understanding these costs is critical for pricing your products correctly and maintaining profitability.
How is Import Duty Calculated?
The UK uses the CIF method (Cost, Insurance, and Freight) to determine the value of goods for customs purposes. This means duty is not just calculated on the price of the item, but on the total cost to get that item to the UK border.
Cost: The invoice price of the goods.
Insurance: The cost of insuring the shipment.
Freight: The shipping cost to the UK.
The formula is: (Goods Cost + Shipping + Insurance) × Duty Rate = Import Duty Payable.
Understanding Import VAT
Value Added Tax (VAT) is charged on the total value of the goods at the time of import. This is often where importers make calculation errors. The "VATable Value" consists of:
The Customs Value (CIF).
The Import Duty paid.
Therefore, you are effectively paying VAT on the duty as well. The standard VAT rate in the UK is 20%, though reduced rates (5%) and zero rates (0%) apply to specific categories like children's clothing or books.
Finding Your Commodity Code
To use this calculator accurately, you need to know the Duty Rate for your specific product. This is determined by the "Commodity Code" (also known as HS Code). You can look up your specific goods on the official UK Trade Tariff website to find the exact percentage applicable to your shipment.
Total Landed Cost
The "Total Landed Cost" is the final metric provided by this calculator. It represents the true cost of the product once it has cleared customs and is ready for sale or use. Ignoring duty and VAT when calculating margins is a common cause of financial loss for new importers.
function calculateImportDuty() {
// Get input values
var goodsValue = document.getElementById("goodsValue").value;
var shippingCost = document.getElementById("shippingCost").value;
var insuranceCost = document.getElementById("insuranceCost").value;
var dutyRate = document.getElementById("dutyRate").value;
var vatRate = document.getElementById("vatRate").value;
var errorDiv = document.getElementById("error-message");
var resultsDiv = document.getElementById("results");
// Parse values to floats, default to 0 if empty
var goods = parseFloat(goodsValue);
var shipping = parseFloat(shippingCost) || 0;
var insurance = parseFloat(insuranceCost) || 0;
var dutyPercent = parseFloat(dutyRate) || 0;
var vatPercent = parseFloat(vatRate) || 0;
// Validation
if (isNaN(goods) || goods < 0) {
errorDiv.style.display = "block";
resultsDiv.style.display = "none";
return;
}
errorDiv.style.display = "none";
// 1. Calculate Customs Value (CIF)
// CIF = Cost + Insurance + Freight
var cifValue = goods + shipping + insurance;
// 2. Calculate Import Duty
// Duty = CIF * Duty Rate
var dutyPayable = cifValue * (dutyPercent / 100);
// 3. Calculate VATable Value
// VAT Value = CIF + Duty
var vatableValue = cifValue + dutyPayable;
// 4. Calculate Import VAT
// VAT = VATable Value * VAT Rate
var vatPayable = vatableValue * (vatPercent / 100);
// 5. Totals
var totalTax = dutyPayable + vatPayable;
var totalLanded = cifValue + totalTax;
// Display Results with formatting
document.getElementById("res-cif").innerHTML = formatMoney(cifValue);
document.getElementById("res-duty").innerHTML = formatMoney(dutyPayable);
document.getElementById("res-vatable").innerHTML = formatMoney(vatableValue);
document.getElementById("res-vat").innerHTML = formatMoney(vatPayable);
document.getElementById("res-total-tax").innerHTML = formatMoney(totalTax);
document.getElementById("res-landed").innerHTML = formatMoney(totalLanded);
// Show results area
resultsDiv.style.display = "block";
}
function formatMoney(amount) {
return "£" + amount.toLocaleString('en-GB', { minimumFractionDigits: 2, maximumFractionDigits: 2 });
}