Profit Factor: Formula, Examples and Its Limits
Profit factor looks like a verdict and behaves like a ratio of two sums. Worked lists show where it misleads.
3 Nov 2026 · 6 min read
On this page
Profit factor is gross profit divided by gross loss. Add up every winning trade, add up every losing trade as a positive number, and divide. Above 1 means the winners outweighed the losers in total, exactly 1 is break-even, and below 1 means the losers were bigger. It is easy to compute and it hides more than it shows, as the lists below make plain.
The formula
Profit factor = gross profit ÷ gross loss, with both in the same unit: R, or money in one currency. Costs belong inside each trade's result before you add up, so a trade that gained 3 pips and paid 4 pips of spread is a loss. Profit factor counts size as well as frequency: one large loss can outweigh many small wins in the denominator.
Four lists, four disagreements
These are made-up trade lists in R, to show that profit factor, win rate and expectancy do not rank strategies the same way. This is arithmetic, not advice.
| List | Made up as | Win rate | Gross profit | Gross loss | Profit factor | Expectancy |
|---|---|---|---|---|---|---|
| P | 14 wins of +0.5R, 6 losses of −1R | 70% | 7.0R | 6.0R | 1.17 | +0.05R |
| Q | 5 wins of +3R, 15 losses of −1R | 25% | 15.0R | 15.0R | 1.00 | 0.00R |
| R | 8 wins of +2R, 12 losses of −1R | 40% | 16.0R | 12.0R | 1.33 | +0.20R |
| S | 3 wins of +2R, 1 loss of −1R | 75% | 6.0R | 1.0R | 6.00 | +1.25R |
- P wins 70% of the time and has a profit factor of 1.17, which looks comfortable. Its expectancy is only +0.05R a trade, so a cost of 0.05R per trade takes it to zero.
- Q wins one trade in four and sits at exactly 1.00: break-even, whatever the win rate suggests.
- R wins less often than P, 40% of the time, and has the higher profit factor (1.33) and the higher expectancy (+0.20R).
- S has the highest profit factor on the page, 6.00, from 4 trades. One more loss moves it, so the number carries almost no information. Profit factor does not know how many trades produced it; see how many trades are enough.
Profit factor and expectancy are linked: expectancy = (profit factor − 1) × loss rate × average loss. For list R that is (1.33 − 1) × 0.60 × 1.00 = +0.20R, the same +0.20R as the table. A profit factor above 1 and an expectancy above 0 are the same statement; they differ in what else they tell you, and in whether they are in units you can act on. Expectancy reads in R per trade. Profit factor reads as a ratio.
One list, one trade that carries it
Here are 20 made-up results in R, in the order they happened: −1.0, −1.0, +2.5, −1.0, −1.0, −1.0, +0.8, −1.0, −1.0, +1.2, −1.0, −1.0, +9.0, −1.0, +0.6, −1.0, −1.0, +1.5, −1.0, −1.0.
| Version | Trades | Gross profit | Gross loss | Profit factor | Expectancy |
|---|---|---|---|---|---|
| All trades | 20 | 15.6R | 14.0R | 1.11 | +0.08R |
| Without the best trade (+9.0R) | 19 | 6.6R | 14.0R | 0.47 | −0.39R |
With every trade, profit factor is 1.11: 15.6R ÷ 14.0R. Take out the one +9.0R result and it falls to 0.47, with an expectancy of −0.39R a trade. The whole positive result rested on one trade. That is not a reason to throw the trade away; it is a reason to compute the figure both ways whenever one result is much larger than the rest.
What profit factor cannot tell you
- It ignores sample size. Four trades and four hundred can give the same ratio.
- It is sensitive to outliers. One large winner, or one large loser, can swing it, as above.
- It says nothing about the path. Two lists with the same profit factor can have very different losing runs and drawdowns. Read it beside the maximum drawdown.
- There is no universal good number. Above 1 after costs is the only line the formula draws. Anything higher depends on the market, the number of trades and how you size.
How to compute your own
- List every closed trade with its result after costs, in R or in one currency.
- Sum the winners; sum the losers as a positive number.
- Divide, then compute it again without your single best trade.
- Put the expectancy and the trade count next to it, always.
We're working on a free journal and a backtester, with no date yet. Today Trepeat is a trade copier for MT4, MT5 and cTrader, currently on demo accounts, and you can add notes, a grade and screenshots to any copied trade once it closes, with a calendar of your results.
The journal exports to Excel (.xlsx) and does not calculate profit factor, expectancy or any other metric today, so the sums above run in a spreadsheet on that export. See the journal documentation. Defined terms are in the glossary, and the metrics overview shows where this one sits.
Written by the Trepeat team.