.fba-calc-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; max-width: 900px; margin: 20px auto; color: #333; border: 1px solid #e1e1e1; border-radius: 8px; overflow: hidden; background-color: #fff; }
.fba-calc-header { background-color: #232f3e; color: #ffffff; padding: 25px; text-align: center; }
.fba-calc-header h2 { margin: 0; font-size: 24px; color: #ff9900; }
.fba-calc-header p { margin: 10px 0 0; opacity: 0.9; }
.fba-calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; padding: 25px; }
@media (max-width: 768px) { .fba-calc-grid { grid-template-columns: 1fr; } }
.fba-input-group { margin-bottom: 15px; }
.fba-input-group label { display: block; font-weight: 600; margin-bottom: 5px; font-size: 14px; }
.fba-input-group input { width: 100%; padding: 10px; border: 1px solid #ccc; border-radius: 4px; font-size: 16px; box-sizing: border-box; }
.fba-input-group input:focus { border-color: #ff9900; outline: none; box-shadow: 0 0 5px rgba(255,153,0,0.3); }
.fba-calc-btn { background-color: #ff9900; color: #111; border: none; padding: 15px 30px; font-size: 18px; font-weight: bold; border-radius: 4px; cursor: pointer; width: 100%; margin-top: 10px; transition: background 0.3s; }
.fba-calc-btn:hover { background-color: #e68a00; }
.fba-results { background-color: #f7f7f7; padding: 25px; border-top: 1px solid #e1e1e1; }
.fba-results-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 15px; text-align: center; }
.fba-result-box { padding: 15px; background: #fff; border-radius: 6px; border: 1px solid #ddd; }
.fba-result-label { font-size: 13px; color: #666; margin-bottom: 5px; text-transform: uppercase; }
.fba-result-value { font-size: 20px; font-weight: bold; color: #232f3e; }
.fba-profit { color: #2e7d32; }
.fba-article { padding: 30px; line-height: 1.6; border-top: 1px solid #e1e1e1; }
.fba-article h3 { color: #232f3e; margin-top: 25px; }
.fba-article ul { margin-left: 20px; }
.fba-example { background: #fff8e1; padding: 15px; border-left: 5px solid #ff9900; margin: 20px 0; }
How to Calculate Amazon FBA Profitability
Selling on Amazon via Fulfillment by Amazon (FBA) is a powerful way to scale an e-commerce business, but the fee structure can be complex. To accurately determine your "take-home" pay, you must look beyond the selling price and account for every variable cost.
Key Metrics Explained
- Referral Fee: This is Amazon's commission for selling on their platform. For most categories, this is 15% of the total selling price.
- Fulfillment Fee: A flat fee per unit that covers picking, packing, and shipping your product to the customer. This depends on the weight and dimensions of your product.
- COGS (Cost of Goods Sold): The total cost to manufacture or purchase the product from your supplier.
- PPC Spend: Your marketing costs. Divide your total monthly ad spend by the number of units sold to get your per-unit advertising cost.
Realistic Example:
You sell a kitchen gadget for $25.00. Your manufacturing cost is $5.00 and it costs $1.00 to ship it to Amazon's warehouse. Amazon takes a 15% referral fee ($3.75) and charges a fulfillment fee of $4.50. After accounting for $0.25 in storage and $2.50 in PPC ads, your net profit is $8.00 per unit.
Margin: 32% | ROI: 133% (based on inventory cost).
Why the "Rule of Threes" Matters
Experienced Amazon sellers often use the "Rule of Threes" for quick product sourcing. Ideally, 1/3 of your revenue goes to product costs, 1/3 goes to Amazon fees and marketing, and 1/3 is your net profit. If your fees consume more than 40% of your revenue, you may need to increase your price or optimize your logistics.
function calculateFBAProfit() {
var sellPrice = parseFloat(document.getElementById('sellingPrice').value) || 0;
var prodCost = parseFloat(document.getElementById('productCost').value) || 0;
var shipToAmz = parseFloat(document.getElementById('shippingToAmazon').value) || 0;
var referralRate = parseFloat(document.getElementById('referralFeeRate').value) || 0;
var fulfillFee = parseFloat(document.getElementById('fulfillmentFee').value) || 0;
var storageFee = parseFloat(document.getElementById('storageFee').value) || 0;
var adSpend = parseFloat(document.getElementById('adSpend').value) || 0;
if (sellPrice <= 0) {
alert("Please enter a valid selling price.");
return;
}
// Calculations
var referralAmount = (referralRate / 100) * sellPrice;
var totalFees = referralAmount + fulfillFee + storageFee;
var totalExpenses = prodCost + shipToAmz + totalFees + adSpend;
var netProfit = sellPrice – totalExpenses;
var margin = (netProfit / sellPrice) * 100;
var roi = (netProfit / (prodCost + shipToAmz)) * 100;
// Update UI
document.getElementById('resTotalFees').innerText = "$" + totalFees.toFixed(2);
document.getElementById('resNetProfit').innerText = "$" + netProfit.toFixed(2);
document.getElementById('resMargin').innerText = margin.toFixed(2) + "%";
document.getElementById('resROI').innerText = isFinite(roi) ? roi.toFixed(2) + "%" : "0%";
// Handle negative profit styling
var profitElement = document.getElementById('resNetProfit');
if (netProfit < 0) {
profitElement.style.color = "#d32f2f";
} else {
profitElement.style.color = "#2e7d32";
}
document.getElementById('resultsArea').style.display = "block";
// Scroll to results on mobile
if (window.innerWidth < 768) {
document.getElementById('resultsArea').scrollIntoView({ behavior: 'smooth' });
}
}