Trading Cost & Spread Drag Calculator
Calculate your spread, commission and slippage cost per trade, per month and per year — then see the all-in cost, break-even impact and annual drag on your account.
Free, no sign-up, instant results · by ExtensionHub.app
🏠 Advanced costs (optional)
Holding costs, exchange fees, conversion fees and tax are treated separately from execution costs in trading-cost research — keep them here, out of the headline spread math.
Your Trading Cost
$17.00 / round trip
Your trading costs add up to $21,250 per year. See exactly where the money goes.
Cost breakdown per round trip
| Cost | Amount | Share |
|---|---|---|
| Spread | $8.00 | 47% |
| Commission | $7.00 | 41% |
| Slippage | $2.00 | 12% |
| Other / swap | $0.00 | 0% |
| Total | $17.00 | 100% |
Estimated vs historical: this result is estimated — based on your manual assumptions, not measured fills.
Key metrics
Your trade must move 1.7 pips in your favor just to recover estimated trading costs.
Which cost is hurting you most?
Cumulative cost drag over time
Costs hit M1: — · M3: — · M6: — · M12: —. Add a win rate and average win in the Calculator tab to overlay gross vs net equity curves.
Sensitivity analysis — what if things change?
Slippage stress test
| Average slippage | Cost / trade | Annual cost |
|---|
—
Spread sensitivity (stress test in pips)
| Spread (pips) | Cost / trade | Annual cost |
|---|
Regardless of the spread unit you entered, this table shows what your cost would be if the round-trip spread were X pips.
Trading-frequency sensitivity
| Round trips / day | Annual cost | % of account / year |
|---|
Broker comparison mode
Enter a second broker’s fee profile. Trading behavior (position size, frequency) comes from the Calculator tab.
Side-by-side annual cost
| Metric | Broker A (yours) | Broker B |
|---|---|---|
| Cost per round trip | — | — |
| All-in cost (pips) | — | — |
| Cost per day | — | — |
| Annual cost | — | — |
| Annual cost / account | — | — |
—
How this was calculated — every formula
| Output | Formula | With your numbers |
|---|
Core formulas (LaTeX):
$$ \text{SpreadCost} = \text{Spread}_{\text{pips}} \times \text{PipValue} \times \text{Lots} $$ $$ \text{CommissionCost} = \begin{cases} \text{Comm}_{\text{RT}} \times \text{Lots} & \text{round turn} \\ \text{Comm}_{\text{side}} \times 2 \times \text{Lots} & \text{per side} \end{cases} $$ $$ \text{SlippageCost} = (\text{EntrySlip} + \text{ExitSlip}) \times \text{PipValue} \times \text{Lots} $$ $$ \text{TotalCost} = \text{SpreadCost} + \text{CommissionCost} + \text{SlippageCost} $$ \begin{align} \text{AnnualTrades} &= \text{RT/day} \times \text{Days/year} \\ \text{AnnualCost} &= \text{CostPerTrade} \times \text{AnnualTrades} \\ \text{MonthlyCost} &= \text{AnnualCost} / 12 \\ \text{DailyCost} &= \text{CostPerTrade} \times \text{RT/day} \end{align} $$ \text{All-in pips} = \text{Spread}_{\text{pips}} + \frac{\text{Commission}}{\text{PipValue} \times \text{Lots}} + \text{Slippage}_{\text{pips}} $$ $$ \text{Break-even move} = \frac{\text{TotalCost}}{\text{PipValue} \times \text{Lots}} \quad (\text{pips}) $$ $$ \text{Annual drag \%} = \frac{\text{AnnualCost}}{\text{AccountSize}} \times 100 \qquad \text{Cost per \$10k} = \frac{\text{TotalCost}}{\text{Notional}} \times 10{,}000 $$ $$ \text{Cost in R} = \frac{\text{TotalCost}}{\text{RiskPerTrade}} \qquad \text{Cost \% of target} = \frac{\text{TotalCost}}{\text{Target}_{\text{pips}} \times \text{PipValue} \times \text{Lots}} \times 100 $$ $$ \text{Net expectancy} = \text{WinRate} \times \text{AvgWin} - (1-\text{WinRate}) \times \text{AvgLoss} - \text{TotalCost} $$ $$ \text{Break-even price (long)} = \text{Entry} + \text{BreakEvenMove} \times \text{PipSize} \qquad \text{(short: subtract)} $$Frequently asked questions
What is trading cost?
Trading cost is the total friction you pay to execute trades: the bid–ask spread, broker commission, and slippage (the gap between your expected fill and the real fill). Annualized, these small per-trade amounts often exceed 50–200% of a starting account balance for active traders.
How do I calculate spread cost?
Spread cost = spread in pips × pip value × position size. For 0.8 pips, $10/pip and 1 lot: 0.8 × 10 × 1 = $8 per round trip.
How much does a 1 pip spread cost?
On EUR/USD with a standard lot, 1 pip = $10. So a 1-pip spread costs $10 per round trip — $2,500 per year at 1 round trip/day over 250 trading days.
Is commission included in spread?
No. Raw-spread accounts advertise tight spreads but charge commission separately; standard accounts bake commission into a wider spread. The all-in cost (spread + commission converted to pips) is the only fair comparison.
What is an all-in trading cost?
Spread + commission + slippage, expressed in a single unit (pips or currency). A 0.8-pip spread account with $7/lot commission is really a ~1.5-pip account.
How is slippage calculated?
Slippage = actual fill price − expected price, measured on entry and exit. Most traders use their historical average adverse slippage per round trip; it varies with liquidity, volatility, news and order size.
What is round-trip trading cost?
The complete cost of one entry + one exit: the full spread (you cross it once), both commission legs, and entry + exit slippage. Per-side figures must be doubled; round-turn figures must not.
How many pips do I need to break even after fees?
Break-even move = total cost per trade ÷ (pip value × lots). At $17 total cost, $10/pip and 1 lot, the market must move 1.7 pips in your favor before you make anything.
Does position size affect spread cost?
Yes — linearly. Doubling lots doubles the spread cost per trip. It does not change the all-in cost in pips (which is why pips are the fairest comparison unit).
Does trading frequency affect annual trading cost?
Directly and multiplicatively. 5 round trips/day at $17 costs ~$21,250/year; 1/day costs ~$4,250 — same strategy, same costs per trade.
Explore more free trading tools
Part of the ExtensionHub.app calculator hub — each tool targets a different search intent:
⚠️ Accuracy note: All results are estimates based on the assumptions you enter. Actual fills vary with liquidity, volatility, news events and order type. This tool does not fetch live prices or FX conversion rates — it is deterministic and works fully offline. Nothing here is financial advice.
How to Use the Trading Cost & Spread Drag Calculator
Your complete step-by-step guide to measuring spread, commission, and slippage drag — with every formula, worked example, and engineering-grade explanation.
Companion guide for ExtensionHub.app · Free, no sign-up, instant results.
Quick Start — 60-Second Setup
This calculator runs entirely in your browser. There is no “Calculate” button — every field updates the results live. Follow these five steps to go from zero to a full annual cost report.
-
Open the Calculator tab
Defaults describe a typical day trader: 1 standard lot EUR/USD, 0.8-pip spread, $7 commission, 0.2-pip slippage, 5 round trips/day, 250 trading days.
-
Set your account & position size
Enter account size, currency, and position size (lots for FX; shares or contracts for other instruments). Use the preset pills — Micro 0.01, Mini 0.10, Standard 1.0, Large 5.0.
-
Enter the three cost inputs
Spread (pips, bid/ask, % or price units), commission (per lot / per trade / % of notional, per side vs round turn), and slippage (simple round-trip or entry/exit separately).
-
Set trading frequency
Round trips per day × trading days per year (250 default; use 252 for stock markets). Presets: Scalper 20/day, Day trader 5/day, Swing 0.5/day.
-
Read the Results tab
Cost breakdown donut, key metrics, sensitivity tables, and the cumulative cost drag chart that plots your costs compounding month by month.
Input Reference — Every Field Explained
Use this table to understand what each input does, its default value, and how to avoid the most common data-entry errors.
| Field | What it means | Default | Common mistake |
|---|---|---|---|
| Account size / currency | Starting balance used for the annual drag %; report currency for all outputs. | $10,000 USD | Using current equity instead of starting balance — drag % will be misleading. |
| Instrument type | Forex, metals, index CFD, commodity, stock/ETF, futures, crypto — changes units and labels. | Forex | Leaving it on Forex for a stock trade; the pip-value field then defaults incorrectly. |
| Pip size | Price move equal to 1 pip: 0.0001 most pairs, 0.01 for JPY pairs. | 0.0001 | Forgetting that USD/JPY pips are 0.01, which understates costs by 100×. |
| Pip value | Per 1 standard lot. “Automatic” uses the deterministic $10/pip FX model; untick to enter your broker’s exact figure. | $10 / pip | Assuming $10/pip for all pairs — USD/JPY is ~$6.45, USD/CHF ~$11.36. |
| Spread input mode | Direct spread, or Bid/Ask (the tool computes Ask − Bid for you). | Direct | Entering the spread twice (once for entry, once for exit) — double-counting. |
| Commission type & mode | Per lot / fixed per trade / % of notional; round turn (×1) vs per side (×2). | $7 per lot, round turn | Selecting “per side” when the broker quote is already round turn — doubling the commission. |
| Slippage | Average adverse slippage per round trip, or entry + exit separately; liquidity-tier estimator provided. | 0.2 pips | Using advertised slippage instead of your own measured average. |
| Advanced costs | Swap/overnight (cost per lot per night × nights) and flat other fees. | Off / $0 | Including swap in the headline spread math instead of keeping it separate. |
Every Formula Used for Results Calculation
All outputs are deterministic — no network calls, no external rates. Here is exactly how each result is computed.
1 Spread Cost
Units: Spread in pips, PipValue in account currency per pip per standard lot, Lots in standard lots (or shares/contracts). Result in account currency.
⚠️ Enter the spread once — do not double it. One round trip crosses the spread once.2 Commission Cost
Units: Commission in account currency (per lot or per trade) or percentage. Result in account currency.
⚠️ Is your commission quoted per side or round turn? $3.50 per lot per side = $7 round turn. Choosing the wrong mode double-counts or undercounts commission.3 Slippage Cost
Units: Slippage in pips. Result in account currency.
⚠️ Enter adverse slippage only. If you use separate entry/exit values, don’t also fill the round-trip field.4 Total Cost per Round Trip
5 Annual, Monthly, and Daily Costs
Units: Round trips per day × days per year = annual round trips (dimensionless count). Costs in account currency.
6 All-in Cost in Pips & Break-even Move
Units: Result in pips. This is the single most important comparison metric across brokers.
7 Annual Drag % and Cost per $10,000 Traded
Units: Drag in percent of starting balance. Cost per $10k in account currency (also quoted in basis points).
⚠️ Annual drag % is cost relative to starting balance — it is not an investment loss figure. It tells you how hard your capital works just to pay friction.8 Net Expectancy (optional)
Units: Win rate as decimal (50% = 0.50). Avg win in pips. Result in account currency per trade.
Visual Overview — How Costs Compound
This diagram shows the flow from your inputs to the three headline outputs. The calculator’s engine is deterministic: every arrow represents a formula you can verify by hand.
Worked Examples — Reproduce These in the Tool
1 Active Day Trader (Tool Defaults)
Inputs: $10,000 account · 1 standard lot EUR/USD · pip value $10 · spread 0.8 pips · commission $7 round turn per lot · slippage 0.2 pips · 5 round trips/day · 250 days/year.
| Cost per round trip | $17.00 | All-in cost | 1.70 pips |
| Cost per day (5 RT) | $85.00 | Break-even move | 1.70 pips |
| Cost per month (avg) | $1,770.83 | Cost per 100 / 1,000 trades | $1,700 / $17,000 |
| Cost per year | $21,250 | Cost per $10,000 traded (bps) | $1.70 (1.70 bps) |
| Round trips / year | 1,250 | Annual drag on account | 212.5% |
How to read it: This trader pays execution costs equal to more than twice their starting account balance every year. EUR/USD must travel 1.7 pips in their favor before a single trade is profitable — scalps smaller than that lose money no matter how good the entry.
2 Swing Trader
Inputs: $5,000 account · 0.5 lots EUR/USD · pip value $10 · spread 1.2 pips · no commission (standard account) · slippage 0.3 pips · 0.5 round trips/day · 250 days/year.
| Cost per round trip | $7.50 | All-in / break-even | 1.50 pips |
| Cost per day (0.5 RT) | $3.75 | Cost per year | $937.50 |
| Cost per 100 trades | $750 | Annual drag on account | 18.75% |
How to read it: Same markets, one-fifth the frequency → the annual bill drops from $21,250 to under $1,000. Frequency is a multiplier on every cost line.
3 Raw-Spread vs Standard Account
Same behavior: 1 lot, 3 round trips/day, 250 days/year. Broker A: raw spread 0.2 pips + $7/lot round-turn commission. Broker B: commission-free, 1.1-pip spread.
| Broker A — Raw + commission | Broker B — Standard | |
|---|---|---|
| Spread | 0.2 pips → $2.00 | 1.1 pips → $11.00 |
| Commission | $7.00 round turn | $0.00 |
| Total per round trip | $9.00 | $11.00 |
| All-in cost | 0.9 pips | 1.1 pips |
| Annual cost (750 RT) | $6,750 | $8,250 |
How to read it: Enter Broker A’s profile in the Calculator tab and Broker B’s in the Compare tab — the verdict line reports the $1,500/year saving automatically. A “commission-free” account with a 1.1-pip spread is more expensive than a raw account charging $7/lot, because the all-in pips (0.9 vs 1.1) are the only fair comparison.
Reading the Cumulative Cost Drag Chart
The Cumulative cost drag over time card (Results tab) is a canvas chart that plots your trading costs compounding month by month over a 12-month horizon. It is the visual proof that small per-trade costs become a large annual number.
1 The Three Lines
- Orange line + filled area — cumulative trading costs: a straight compounding ramp from one month of costs to the annual total. In Example 1 this runs from roughly $1,771 at M1 up to $21,250 at M12.
- Green line — gross P&L: appears only when you enter a win rate and average gross win (pips) in the Account card. Example 1 with a 50% win rate and 20-pip average win adds $50,000/year gross.
- Blue dashed line — net after costs: gross P&L minus cumulative costs. The vertical gap between green and blue is precisely what execution costs eat — the visual definition of “cost drag.”
2 Markers and Checkpoints
Circle markers sit at M3, M6, and M12 on the cost curve, with dollar values printed next to the M12 point. In Example 1 the checkpoints are approximately:
| Checkpoint | Cumulative cost | What it tells you |
|---|---|---|
| Month 1 | $1,771 | One month of friction at 5 RT/day. |
| Month 3 | $5,313 | Over half your starting account paid in costs. |
| Month 6 | $10,625 | Costs now exceed the starting balance. |
| Month 12 | $21,250 | 212.5% of starting account paid in friction. |
3 How the Chart Updates
- Live redraw on every input change — costs, frequency, and account size all rescale the y-axis automatically.
- Tab-aware rendering — switching to the Results tab re-renders the chart so it always fills its container correctly.
- Responsive resize — the chart redraws after window resize (debounced 150 ms) and honours device pixel ratio for crisp lines on retina screens.
- Gross/net overlay toggle — the green and blue lines appear automatically when win rate and average gross win are populated, and disappear when either field is cleared.
Pip Values & Typical Spreads — Major Pairs
Pip value is not constant across pairs and account currencies. The calculator uses a deterministic $10/pip default for XXX/USD pairs, but you can override it per pair using the pip-value field or the pair selector.
1 Pip Value Math (USD Account, 1 Standard Lot = 100,000 Units)
For XXX/USD pairs the quote currency is USD, so pip value = 0.0001 × 100,000 = $10.00. For USD/quote pairs, pip value = pip size × 100,000 ÷ rate, converting the quote currency back to USD:
Reference prices used: EUR/USD 1.0850, GBP/USD 1.2650, USD/JPY 155.00, USD/CHF 0.8800, USD/CAD 1.3700, AUD/USD 0.6550, NZD/USD 0.5950, EUR/GBP 0.8500 (illustrative, September 2026). Pip values move with rates — verify against your broker’s contract specs, and let the calculator convert via its pip-value field.
2 Typical Spreads and Spread Cost per Pair
The table below combines pip value, typical spread range, and the resulting spread cost per round trip and per year at 1 RT/day over 250 trading days.
| Pair | Pip size | Pip value (1 std lot, USD acct) | Typical spread (pips) | Spread cost per RT | Per year @ 1 RT/day |
|---|---|---|---|---|---|
| EUR/USD | 0.0001 | $10.00 | 0.8 – 1.4 | $8.00 – $14.00 | $2,000 – $3,500 |
| GBP/USD | 0.0001 | $10.00 | 1.0 – 1.5 | $10.00 – $15.00 | $2,500 – $3,750 |
| USD/JPY | 0.01 | ≈ $6.45 @ 155.00 | 0.8 – 1.2 | $5.16 – $7.74 | $1,290 – $1,935 |
| USD/CHF | 0.0001 | ≈ $11.36 @ 0.8800 | 1.2 – 1.7 | $13.64 – $19.32 | $3,409 – $4,830 |
| USD/CAD | 0.0001 | ≈ $7.30 @ 1.3700 | 1.3 – 1.8 | $9.49 – $13.14 | $2,372 – $3,285 |
| AUD/USD | 0.0001 | $10.00 | 1.0 – 1.4 | $10.00 – $14.00 | $2,500 – $3,500 |
| NZD/USD | 0.0001 | $10.00 | 1.2 – 1.8 | $12.00 – $18.00 | $3,000 – $4,500 |
| EUR/GBP (cross) | 0.0001 | ≈ $12.65 @ 0.8500 | 1.4 – 1.9 | $17.71 – $24.04 | $4,428 – $6,009 |
⚠️ Spread ranges are illustrative industry norms compiled from public broker and education sources (September 2026), not live quotes: majors commonly 0.1–1 pip and minors 2–5 pips on competitive accounts. For live numbers see a real-time broker spread monitor such as MyfxBook.
Common Mistakes This Tool Is Built to Prevent
Each of the following errors is a real, documented failure mode in retail trading-cost analysis. The calculator’s UI, defaults, and microcopy are engineered to catch them before they distort your report.
1 Double-Counting the Spread
Enter the spread once — one round trip crosses it once. Beginners often enter the spread separately for entry and exit, doubling the largest cost line. The bid/ask mode exists so you never have to multiply by 2: it computes Ask − Bid for you and treats the result as the full round-trip spread.
2 Per-Side vs Round-Turn Commission
A broker quoting “$3.50 per lot per side” charges $7 round turn on a standard lot. Selecting “round turn” when the broker quote is already per side under-counts by half; selecting “per side” when the quote is already round turn doubles it. The charging-model selector applies the correct ×1 or ×2 multiplier and its microcopy spells out the conversion.
3 Wrong Pip Size on JPY Pairs
USD/JPY pips are 0.01, not 0.0001. Leaving the pip size at 0.0001 for a JPY pair understates spread cost by 100×. The currency-pair selector auto-sets pip size to 0.01 for all JPY-quoted pairs.
4 Comparing Brokers on Spread Alone
A “commission-free” account with a 1.1-pip spread can be more expensive than a raw account charging $7/lot with a 0.2-pip spread — but only the all-in pips reveal it. The calculator outputs all-in pips as a headline metric and the Compare tab shows a side-by-side annual verdict with a dollar saving figure.
5 Using Advertised Slippage
Broker-marketed slippage figures are best-case averages. Real slippage spikes around news releases, thin liquidity, and large order sizes. The calculator provides a liquidity-tier estimator for sensible defaults, but the microcopy explicitly warns you to use your own measured average whenever possible.
6 Mixing Swap and Spread
Swap (overnight financing) is a holding cost, not an execution cost. It is kept in the Advanced costs section and reported separately in the breakdown table, so it never contaminates the headline spread math that brokers compete on.
Engineering-Grade Explanation — Where These Calculations Apply
1 What Is This Calculation Used For?
Execution cost analysis is the engineering discipline of measuring friction in financial markets. Just as a mechanical engineer calculates losses in a gear train, a trading engineer calculates the cost drag that separates gross strategy performance from net account growth.
2 Where Engineers Apply It
- Quantitative strategy development: backtest results must be adjusted for realistic spread, commission, and slippage before deployment.
- Broker selection: all-in pips (spread + commission + slippage) is the only valid comparison metric.
- Frequency optimization: reducing round trips per day from 20 to 5 cuts annual costs by 75% without changing the strategy logic.
- Position sizing: cost per trade scales linearly with lots, so aggressive sizing magnifies the drag.
- Risk model calibration: cost in R (risk units) tells you how much of your edge is consumed by friction.
3 Common Mistakes (Engineering View)
- Double-counting the spread: entering the spread twice for entry and exit. One round trip crosses it once.
- Confusing per-side and round-turn commission: $3.50 per side = $7 round turn; the selector handles the ×2.
- Wrong pip size on JPY pairs: USD/JPY pips are 0.01, not 0.0001.
- Comparing brokers on spread alone: always compare all-in pips.
- Using advertised slippage: use your own measured average; slippage spikes around news.
4 Real-World Usage
Prop trading firms, systematic hedge funds, and retail algo traders all use this exact math. A strategy that shows 60% annual returns in a backtest at zero cost may show 15% after real spread, commission, and slippage. The calculator makes that gap visible and quantifiable.
Accuracy Note — Building Trust
Frequently Asked Questions
Click any question to expand its answer. Multiple items can stay open at once, so you can compare related answers side by side.
What is trading cost?
How do I calculate spread cost?
How much does a 1 pip spread cost?
Is commission included in spread?
What is an all-in trading cost?
How is slippage calculated?
What is round-trip trading cost?
How many pips do I need to break even after fees?
Does position size affect spread cost?
Does trading frequency affect annual trading cost?
Key User Pain Points — and How This Calculator Solves Them
| Pain Point | How the Calculator Solves It |
|---|---|
| “I don’t know my true cost per trade.” | Combines spread, commission, and slippage into a single total cost per round trip in account currency — updated live as you type. |
| “I double-count the spread.” | The spread is entered once and treated as the round-trip cost. The bid/ask mode computes Ask − Bid for you, eliminating the ×2 error. |
| “I confuse per-side and round-turn commission.” | The charging-model selector applies the correct multiplier (×1 or ×2) and its microcopy warns you about the classic mistake. |
| “I compare brokers on spread alone.” | Outputs all-in pips (spread + commission + slippage) so you compare the true cost, and the Compare tab shows a side-by-side annual verdict. |
| “I don’t see how costs compound.” | The cumulative cost drag chart plots costs month by month, with optional gross/net equity overlay so you see the drag gap. |
| “I use advertised slippage, not my own.” | The liquidity-tier estimator provides sensible defaults, but the tool is designed for your measured average — with microcopy warning that slippage spikes around news. |
| “I forget JPY pip sizes.” | The currency-pair selector auto-sets pip size to 0.01 for JPY pairs, preventing a 100× understatement. |
Copy, Share, Print — Reports & Persistence
Every result in the calculator can be exported, shared, or printed without any third-party tooling. The following buttons sit permanently under the panels.
1 Copy Full Report
Formats every input and result — per-trade, per-day, per-month, per-year costs, all-in pips, break-even move, and annual drag % — as plain text and writes it to your clipboard. Paste it straight into Excel, Google Sheets, Notion, or your trading journal. The report includes the timestamp and a clear “estimated” label so a saved entry cannot be mistaken for a measured fill record.
2 Copy Shareable Link
Encodes your key inputs (account size, currency, lots, spread, commission, slippage, frequency) into the page URL query string. Anyone opening the link sees the calculator pre-filled with your exact scenario. Append a fragment to deep-link a specific tab:
#results— opens the Results tab#compare— opens the Compare tab#faqor#formulas— opens the Formulas & FAQ tab
3 Print / Save PDF
Triggers the browser print dialog with a print-optimised layout: tabs and buttons are hidden, all panels are expanded, and box shadows are removed so the report prints cleanly on A4 or Letter. Use “Save as PDF” in the print dialog to produce a shareable PDF without any extra software.
4 Reset All Fields
Restores every input to its documented default value — account $10,000 USD, 1 standard lot, 0.8-pip spread, $7 round-turn commission, 0.2-pip slippage, 5 round trips/day, 250 trading days — and recomputes instantly.
⚠️ Copied reports are plain text and contain no formulas — if you edit a value in your spreadsheet, the derived numbers will not update automatically. Use the shareable link to reproduce the live calculator instead.Accuracy note: All results are estimates from the assumptions you enter. Actual fills vary with liquidity, volatility, news and order type. The tool is deterministic and works offline — it does not fetch live rates. Nothing here is financial advice.
© ExtensionHub.app · Trading Cost & Spread Drag Calculator · Companion user guide.
