Selling on Amazon using Fulfillment by Amazon (FBA) involves several hidden costs that can quickly erode your margins if not calculated correctly. This calculator helps you determine your exact take-home pay per unit sold.
Key Metrics Explained
Selling Price: The list price of your item on Amazon.
COGS (Cost of Goods Sold): The total cost to manufacture or purchase the item from your supplier.
Referral Fee: Amazon's "commission" for selling on their platform. Most categories are 15%, but it varies from 8% to 45%.
Fulfillment Fee: The cost for Amazon to pick, pack, and ship your product to the customer. This is based on size and weight.
Storage Fees: Monthly costs for holding your inventory in Amazon's warehouses. This typically increases during Q4 (October – December).
Real-World Example
Imagine you sell a Yoga Mat for $40.00. Your costs are:
Product Cost: $10.00
Shipping to Amazon: $2.00
Referral Fee (15%): $6.00
FBA Fulfillment Fee: $7.50
Storage Fee: $0.50
In this scenario, your Total Expenses are $26.00, leaving you with a Net Profit of $14.00 and a 35% Profit Margin.
function calculateFBA() {
var price = parseFloat(document.getElementById('fba_price').value);
var cogs = parseFloat(document.getElementById('fba_cogs').value);
var shipping = parseFloat(document.getElementById('fba_shipping').value);
var referralRate = parseFloat(document.getElementById('fba_referral').value);
var fulfillment = parseFloat(document.getElementById('fba_fulfillment').value);
var storage = parseFloat(document.getElementById('fba_storage').value);
if (isNaN(price) || isNaN(cogs)) {
alert("Please enter at least the Selling Price and Product Cost.");
return;
}
// Default 0 for optional inputs
shipping = isNaN(shipping) ? 0 : shipping;
referralRate = isNaN(referralRate) ? 0 : referralRate;
fulfillment = isNaN(fulfillment) ? 0 : fulfillment;
storage = isNaN(storage) ? 0 : storage;
// Calculations
var referralFeeAmount = price * (referralRate / 100);
var totalAmazonFees = referralFeeAmount + fulfillment + storage;
var totalExpenses = cogs + shipping + totalAmazonFees;
var netProfit = price – totalExpenses;
var profitMargin = (netProfit / price) * 100;
// Display
document.getElementById('res_rev').innerHTML = "$" + price.toFixed(2);
document.getElementById('res_fees').innerHTML = "$" + totalAmazonFees.toFixed(2);
document.getElementById('res_exp').innerHTML = "$" + totalExpenses.toFixed(2);
var profitEl = document.getElementById('res_profit');
profitEl.innerHTML = "$" + netProfit.toFixed(2);
profitEl.className = netProfit >= 0 ? "result-val profit-positive" : "result-val profit-negative";
var marginEl = document.getElementById('res_margin');
marginEl.innerHTML = profitMargin.toFixed(2) + "%";
marginEl.className = profitMargin >= 0 ? "result-val profit-positive" : "result-val profit-negative";
document.getElementById('fba-result').style.display = "block";
}