Success on Amazon hinges on understanding your numbers. To accurately calculate your net profit, you must account for all costs associated with sourcing, shipping, and selling via Fulfillment by Amazon (FBA).
Key Metrics Explained
Referral Fee: Amazon charges a percentage of the total sale price for every item sold. For most categories, this is 15%.
FBA Fulfillment Fee: This is the cost for Amazon to pick, pack, and ship your product. It is determined by the weight and dimensions of the item.
Landed Cost: This is the total cost to get your product from the manufacturer to the Amazon warehouse, including manufacturing costs and freight.
PPC Spend: Amazon Advertising costs can eat into margins quickly. Dividing your total ad spend by the number of units sold gives you your per-unit marketing cost.
Example Calculation
Let's say you sell a yoga mat for $35.00.
Product Cost (COGS): $10.00
Shipping to Amazon: $1.00
Referral Fee (15%): $5.25
FBA Fee: $7.50
Storage & Misc: $0.50
Your total costs are $24.25. Your Net Profit would be $10.75, with a Profit Margin of 30.7% and an ROI of 107.5%.
function calculateFBAProfit() {
var salePrice = parseFloat(document.getElementById('salePrice').value) || 0;
var unitCost = parseFloat(document.getElementById('unitCost').value) || 0;
var shippingToAmz = parseFloat(document.getElementById('shippingToAmz').value) || 0;
var referralRate = parseFloat(document.getElementById('referralFee').value) || 0;
var fbaFee = parseFloat(document.getElementById('fbaFee').value) || 0;
var monthlyStorage = parseFloat(document.getElementById('monthlyStorage').value) || 0;
var marketingCost = parseFloat(document.getElementById('marketingCost').value) || 0;
var otherCosts = parseFloat(document.getElementById('otherCosts').value) || 0;
if (salePrice 0 ? (netProfit / unitCost) * 100 : 0;
// Update UI
document.getElementById('resTotalFees').innerHTML = '$' + totalAmzFees.toFixed(2);
document.getElementById('resTotalCost').innerHTML = '$' + totalLandedCost.toFixed(2);
var profitEl = document.getElementById('resNetProfit');
profitEl.innerHTML = '$' + netProfit.toFixed(2);
profitEl.className = 'result-value ' + (netProfit >= 0 ? 'profit-positive' : 'profit-negative');
document.getElementById('resMargin').innerHTML = profitMargin.toFixed(2) + '%';
document.getElementById('resROI').innerHTML = roi.toFixed(2) + '%';
document.getElementById('fba-result').style.display = 'block';
}