Selling on Amazon FBA (Fulfillment by Amazon) is a powerful way to scale an e-commerce business, but the fee structure can be complex. To remain profitable, you must account for every dollar leaving your account, from the manufacturing floor to the customer's doorstep.
Key Metrics for FBA Sellers
Referral Fee: This is Amazon's "commission" for selling on their platform. It varies by category but is typically 15% of the total sales price.
Fulfillment Fee: This covers picking, packing, and shipping your product to the customer. It depends on the size and weight tier of your item.
Land Cost: The total cost of producing the item and shipping it to Amazon's warehouse.
ACOS (Advertising Cost of Sales): The marketing spend required to generate a sale. In our calculator, this is represented as PPC cost per unit.
Example Calculation
If you sell a kitchen gadget for $25.00:
Product Cost: $5.00
Shipping to Amazon: $1.00
Referral Fee (15%): $3.75
FBA Fulfillment Fee: $4.50
Storage & Misc: $0.75
PPC Spend: $2.00
Total Expenses: $17.00 Net Profit: $8.00 Profit Margin: 32% ROI: 160% (Profit / Product Cost)
How to Improve Your Margins
If your margins are below 20%, consider negotiating with suppliers for lower COGS, optimizing your packaging to drop into a smaller FBA size tier, or improving your PPC efficiency. Successful sellers typically aim for a "Rule of Three": 1/3 for product costs, 1/3 for Amazon fees, and 1/3 for profit.
function calculateFBAProfit() {
var price = parseFloat(document.getElementById('sellingPrice').value) || 0;
var cogs = parseFloat(document.getElementById('productCost').value) || 0;
var shipAmz = parseFloat(document.getElementById('shippingToAmz').value) || 0;
var refPercent = parseFloat(document.getElementById('referralFeePercent').value) || 0;
var fbaFee = parseFloat(document.getElementById('fulfillmentFee').value) || 0;
var storage = parseFloat(document.getElementById('storageFee').value) || 0;
var ppc = parseFloat(document.getElementById('ppcCost').value) || 0;
var misc = parseFloat(document.getElementById('miscCost').value) || 0;
// Calculations
var refFeeAmount = price * (refPercent / 100);
var totalAmzFees = refFeeAmount + fbaFee + storage;
var totalExpenses = cogs + shipAmz + totalAmzFees + ppc + misc;
var netProfit = price – totalExpenses;
var margin = 0;
if (price > 0) {
margin = (netProfit / price) * 100;
}
var roi = 0;
if (cogs > 0) {
roi = (netProfit / cogs) * 100;
}
// Update DOM
document.getElementById('netProfitDisplay').innerHTML = '$' + netProfit.toFixed(2);
document.getElementById('marginDisplay').innerHTML = margin.toFixed(2) + '%';
document.getElementById('roiDisplay').innerHTML = roi.toFixed(2) + '%';
document.getElementById('calcRefFee').innerHTML = '$' + refFeeAmount.toFixed(2);
document.getElementById('calcTotalFees').innerHTML = '$' + totalAmzFees.toFixed(2);
document.getElementById('calcTotalCosts').innerHTML = '$' + totalExpenses.toFixed(2);
// Styling adjustments for negative profit
var resDisplay = document.getElementById('netProfitDisplay');
if (netProfit < 0) {
resDisplay.style.color = '#d9534f';
} else {
resDisplay.style.color = '#28a745';
}
document.getElementById('results').style.display = 'block';
}