Skip to main content
Loading live market data…

Forex Profit & Loss Calculator

Before you take a trade, it pays to know what each scenario is worth. This calculator turns an entry and exit price into a clear profit or loss — in both pips and your account currency — for long and short positions. Use it to weigh a setup’s reward against its risk, or to check a closed trade after the fact.

Trade inputs

1 pip on EUR/USD = 0.0001 · quote currency USD.· Live rates · updated 10:39 UTC

How it works

Profit and loss is the price distance you captured, multiplied by your position size, with the sign flipped for short trades. The result is computed in the quote currency and then converted to your account currency:

Move (long)   = exit − entry
Move (short)  = entry − exit
Pips          = Move ÷ pip size
P&L (quote)   = Move × (lots × contract size)
P&L (account) = P&L (quote) → converted to account currency

Example — Long 1.0 lot EUR/USD, entry 1.0840, exit 1.0890, USD account:
  Move   = 1.0890 − 1.0840 = 0.0050  (50 pips)
  P&L    = 0.0050 × 100,000 = +$500
  • Longs profit when price rises above entry; shorts profit when price falls below it. The calculator handles the sign for you.
  • The figure shown is gross — it does not deduct the spread, commission or overnight swap. Net those out for your true result.
  • For JPY and other non-USD-quoted pairs the P&L is converted through the current cross rate into your account currency.

Pair the projected reward with the risk from your position size to get a reward-to-risk ratio, confirm the pip value, and log the closed trade with its R-multiple in the trade journal. Live prices are on the forex rates board.

What the P&L number actually tells you

A profit and loss calculator answers two questions at once, and they are not the same question. The pip figure says how far price travelled in the pair's own smallest conventional unit. The account-currency figure says what that travel did to your balance. Traders who report results only in pips lose sight of the fact that a 65-pip day on a micro lot and a 65-pip day on a standard lot are the same trade idea and completely different financial events.

The bridge between the two is position size, and the relationship is strictly linear. Pips depend only on entry and exit. Money depends on pips multiplied by how many units of the base currency you were holding. Change the lot size and the money moves in exact proportion while the pip count does not move at all. That is why an identical setup can be prudent or reckless depending on nothing but the size box.

The third figure on the results panel - notional value - is neither of those, and it is the one most often misread. Notional is the face value of the contract you control, which on a standard lot is a six-figure sum even on a small account. It is not money at stake and it is not money you have. It exists to show how large a market exposure your margin is supporting, which matters for margin and leverage rather than for P&L.

Everything on the results panel describes a closed trade. While a position is still open, the profit a platform shows is floating, and it is marked at the price you could actually exit at right now - the bid for a long, the ask for a short. Floating profit becomes real only when the position closes, and until then it moves with every tick.

Same 65-pip gain, two position sizes (EUR/USD, USD account)
Assumed: standard lot = 100,000 units, pip = 0.0001,
quote currency USD = account currency USD, so no conversion.

0.10 lots  ->  10,000 units  ->  pip value 0.0001 x  10,000 =  1.00 USD
           ->  65 pips x  1.00                              =  65.00 USD

1.00 lot   -> 100,000 units  ->  pip value 0.0001 x 100,000 = 10.00 USD
           ->  65 pips x 10.00                              = 650.00 USD

Identical pips. Ten times the money. Only size changed.
  • Pips are a distance. They are identical for a 0.01 lot and a 10 lot on the same entry and exit.
  • Money is pips x pip value, and pip value is set entirely by position size and the pair.
  • Notional value is contract face value, not risk. A 1.00 lot EUR/USD position carries a six-figure notional and may carry a three-figure risk.
  • Floating P&L is marked against the price you could close at, so it always sits slightly behind the mid price you are watching.

Deriving the formula instead of memorising it

A forex quote is the price of one currency in terms of another: for EUR/USD, the number of US dollars it takes to buy one euro. When you buy 1.00 lot of EUR/USD you are holding 100,000 euros, and that euro quantity does not change while the trade is open. What changes is what those euros are worth in dollars.

So the value of the position in the quote currency is units x price, and the change in that value is units x (exit price - entry price). That single expression is the whole calculation. There is no separate rule for profits and losses, and no dependence on where the price started - in quote currency, a 50-pip move from 1.0800 to 1.0850 is worth exactly what a 50-pip move from 1.1800 to 1.1850 is worth, because the base-currency quantity you hold is the same in both.

Pips are then just a readable unit for that price change. Dividing the move by the pip size converts a raw decimal into a count, and multiplying the pip size by the units gives the value of one pip. Written this way, P&L = pips x pip value falls out of the algebra rather than being asserted, and it also explains why pip value on a pair quoted in your account currency is a flat figure that never needs the entry price at all.

The final step exists because everything above produces a result in the quote currency. If your account is denominated in something else, that amount has to be converted at the prevailing rate between the quote currency and your account currency before it means anything to your balance.

The derivation on one position (long 1.00 lot EUR/USD)
units           = 1.00 x 100,000              = 100,000 EUR held
value at entry  = 100,000 x 1.0840            = 108,400 USD
value at exit   = 100,000 x 1.0905            = 109,050 USD
change in value = 109,050 - 108,400           =     650 USD

by the formula  = (1.0905 - 1.0840) x 100,000 =     650 USD

The euro quantity was fixed. Only its dollar value moved.
  • Long move = exit - entry. Short move = entry - exit. Everything downstream is identical.
  • P&L in quote currency = move x units, where units = lots x contract size.
  • Pips = move / pip size. Pip value = pip size x units. Therefore P&L = pips x pip value.
  • Convert quote-currency P&L into account currency last, never partway through the calculation.

A long trade worked end to end

Assume a USD-denominated account trading EUR/USD, standard lot = 100,000 units of the base currency, pip = 0.0001. The trade is a buy of 0.50 lots at 1.0840, closed at 1.0905. Because the quote currency and the account currency are both USD, no conversion step is needed, which makes this the cleanest case to learn the sequence on.

Work it in the order the formula runs. Units first, because everything else depends on it: 0.50 x 100,000 = 50,000 euros held. Then the move, measured in the direction of the trade: 1.0905 - 1.0840 = 0.0065. Then pips: 0.0065 / 0.0001 = 65.0. Then the money: 0.0065 x 50,000 = 325.00 USD.

The cross-check is worth doing every single time, because it catches decimal errors instantly. Pip value at this size is 0.0001 x 50,000 = 5.00 USD, and 65.0 pips x 5.00 USD = 325.00 USD. Two independent routes to the same figure means the pip size and the unit count are both right. If they disagree, one of those two inputs is wrong.

Notice what this is as a percentage. Notional at entry was 50,000 x 1.0840 = 54,200.00 USD, and 325.00 / 54,200.00 = 0.60 percent. The price itself moved 0.0065 / 1.0840 = 0.60 percent. Return on notional and percentage price move are always equal, because the unit count cancels out of both, which is a useful reminder that leverage does not change how the market behaves - it only changes how much of that 0.60 percent lands on your equity.

Long 0.50 lots EUR/USD, USD account, entry 1.0840 -> exit 1.0905
units       = 0.50 x 100,000        =  50,000 EUR
move        = 1.0905 - 1.0840       =  0.0065
pips        = 0.0065 / 0.0001       =  65.0 pips
pip value   = 0.0001 x 50,000       =  5.00 USD per pip

P&L (gross) = 0.0065 x 50,000       = +325.00 USD
cross-check = 65.0 x 5.00           = +325.00 USD

notional    = 50,000 x 1.0840       =  54,200.00 USD
return      = 325.00 / 54,200.00    = +0.60% of notional
price move  = 0.0065 / 1.0840       = +0.60%

Shorts: one subtraction reversed, nothing else

A short sells the base currency you do not own, so the position gains when the base weakens against the quote - that is, when the price falls. The formula accommodates this with a single change: the move is measured as entry - exit rather than exit - entry. Units, pip size, pip value and the currency conversion are all identical to a long.

This matters more than it sounds, because the most frequent arithmetic mistake on short trades is computing exit - entry out of habit and then flipping the sign of the answer by hand. That works only for as long as you remember to do it, and it silently reports a profit where there was a loss the first time you forget. Reversing the subtraction inside the formula makes the sign correct automatically, including when the trade went against you.

The symmetry is exact in the arithmetic but not in the exposure. A long position's loss is bounded by the arithmetic itself, because a price cannot fall below zero. A short's is not, since there is no ceiling on how far a price can rise. In practice both outcomes depend on where you actually exit and on the margin available to support the position - and as the final section on this page sets out, a stop marks an intended exit rather than a guaranteed one. That asymmetry means an unhedged short held through a scheduled release carries a wider range of possible outcomes than the calculator's single projected figure suggests.

Short 0.30 lots GBP/USD, USD account, entry 1.2750
units      = 0.30 x 100,000     = 30,000 GBP
pip value  = 0.0001 x 30,000    = 3.00 USD per pip

Exit 1.2690 - price fell, the short was right:
  move     = 1.2750 - 1.2690    =  0.0060  ( +60.0 pips)
  P&L      = 0.0060 x 30,000    = +180.00 USD

Exit 1.2810 - price rose, the short was wrong:
  move     = 1.2750 - 1.2810    = -0.0060  ( -60.0 pips)
  P&L      = -0.0060 x 30,000   = -180.00 USD

Same distance either way. The sign comes from the subtraction.
  • Buy / long: move = exit - entry. The trade profits when the exit price is higher.
  • Sell / short: move = entry - exit. The trade profits when the exit price is lower.
  • Do not calculate exit - entry and flip the sign manually. Reverse the subtraction instead.
  • Pip value is identical for a long and a short of the same size on the same pair - direction changes the sign, never the magnitude.

JPY pairs and accounts that are not in the quote currency

Two adjustments break more P&L calculations than everything else combined: the pip size on yen-quoted pairs, and the conversion into an account currency that is not the pair's quote currency. Both are mechanical, and both produce answers that are wrong by orders of magnitude rather than by a rounding error when they are missed.

Yen-quoted pairs use a pip of 0.01 rather than 0.0001, because they are quoted to two or three decimal places instead of four or five. Using 0.0001 on USD/JPY does not make you slightly wrong, it makes you wrong by a factor of 100 - a 70-pip move reads as 7,000 pips. The money figure is unaffected, because money depends on the raw price move and not on the pip convention, which is precisely why a trader can hold a correct P&L and a nonsensical pip count at the same time and never notice.

The conversion applies whenever the quote currency differs from your account currency. P&L is generated in the quote currency by construction, so a euro-denominated account trading USD/JPY earns or loses yen first, and those yen are then translated into euros at the prevailing EUR/JPY rate. That rate moves independently of your trade, so the account-currency result of an identical pip outcome is not fixed - it drifts with the cross.

The direction of the conversion is a trap in itself. Dividing where you should multiply gives an answer that is off by the square of the rate and often looks superficially plausible. The reliable test is dimensional: yen divided by yen-per-euro leaves euros. If the units in your division do not cancel down to your account currency, the conversion is inverted.

Long 1.00 lot USD/JPY, EUR account, entry 152.40 -> exit 153.10
Assumed illustrative conversion rate: EUR/JPY = 164.00
(an assumption for this worked example, not a live rate)

units       = 1.00 x 100,000      = 100,000 USD
move        = 153.10 - 152.40     = 0.70
pips        = 0.70 / 0.01         = 70.0 pips
P&L (JPY)   = 0.70 x 100,000      = +70,000 JPY
P&L (EUR)   = 70,000 / 164.00     = +426.83 EUR

cross-check via pip value:
  pip value = 0.01 x 100,000      = 1,000 JPY per pip
            = 1,000 / 164.00      = 6.0976 EUR per pip
  70.0 x 6.0976                   = +426.83 EUR

the classic error - wrong pip size:
  0.70 / 0.0001                   = 7,000 pips (100x too many)
  • JPY-quoted pairs: pip = 0.01. Almost everything else: pip = 0.0001.
  • P&L is always born in the quote currency, never directly in the account currency.
  • The conversion uses the rate at the time of the calculation, so identical pips can be worth different amounts on different days.
  • Verify a conversion by cancelling units, not by judging which number looks more reasonable.

Why gross P&L is not what reaches your balance

Every figure this calculator produces is gross. It is the value of the price move on your position size and nothing more. Three separate deductions sit between that number and your account statement, and they are charged in different ways, at different times, on different bases - which is exactly why they cannot be folded into a single fudge factor.

The spread is the difference between the price you can buy at and the price you can sell at. It is paid the instant a trade opens, whether or not it ever appears as a line item, and in practice it means a position starts underwater by the spread and has to recover that distance before the gross figure is even reached. Commission, where a broker charges it, is usually billed per lot per side, so it scales with size and with how often you trade rather than with how long you hold. Swap - the overnight financing on the interest-rate differential between the two currencies - accrues per night held, can be a credit or a debit depending on direction and pair, and is the only one of the three that grows the longer the trade stays open.

The useful habit is to convert all three into pips at your position's pip value, because that puts them on the same scale as the move you are trying to capture. A cost of a few pips is background noise on a 200-pip swing trade and a decisive drag on a 6-pip scalp. The same costs on the same pair can be irrelevant or fatal depending entirely on how far you are trying to travel.

Cost structures vary by broker, account type, instrument and time of day, so substitute your own figures rather than any illustration. The example below exists to demonstrate the method; every cost input in it is an assumption chosen to make the arithmetic visible, and none of them describes any particular broker.

Gross to net on the 0.50 lot EUR/USD long (all cost figures assumed, illustrative only)
pip value at 0.50 lots                      =   5.00 USD per pip
gross P&L, 65.0 pips                        = +325.00 USD

assumed spread 1.2 pips   1.2 x 5.00        =   -6.00 USD
assumed commission 7.00 USD per standard lot
  round turn, at 0.50 lots  7.00 x 0.50     =   -3.50 USD
assumed swap -1.50 USD per night x 3 nights =   -4.50 USD
                                              ------------
total costs                                 =  -14.00 USD
net P&L                                     = +311.00 USD

costs in pips   14.00 / 5.00                =    2.8 pips
net pips        65.0 - 2.8                  =   62.2 pips
check           62.2 x 5.00                 = +311.00 USD
costs took      14.00 / 325.00              =   4.3% of gross
  • Spread: charged once at entry, scales with size, independent of holding time.
  • Commission: typically per lot per side, so it scales with size and with trade frequency.
  • Swap: charged or credited per night held, so it scales with time - and rollovers spanning a weekend are commonly charged as several nights at once.
  • Express every cost in pips so it can be compared directly against the move you are targeting.

Where the projection and the actual fill part company

The calculator assumes you get the entry and exit prices you typed. On a liquid pair during an active session that assumption is usually close enough to be useful. The exceptions are worth knowing precisely, because they are asymmetric - they tend to make outcomes worse than projected rather than better.

Slippage is the gap between the price a market order requests and the price it fills at, and it appears whenever price is moving faster than the order book can be refreshed. A stop-loss is particularly exposed, because it becomes a market order the moment it triggers and then fills at whatever is available, not at the level you set. A stop therefore defines where you intend to exit, not the worst outcome available to you. When a market gaps - over a weekend, around a scheduled release, or on unscheduled news - price can jump straight past the stop and fill materially beyond it. Position sizing controls risk; it does not prevent loss, and assuming a stop caps the damage is what turns a planned loss into an unplanned one.

Rounding is a quieter source of divergence. Brokers accept lots in discrete steps, commonly 0.01, so a size computed as 0.4732 lots is traded as 0.47 or 0.48 and every downstream figure - pip value, projected P&L, actual risk - shifts slightly with it. Rounding down reduces both the projected reward and the amount at risk. Separately, most platforms quote fractional pips: the fifth decimal on a four-decimal pair, the third on a yen pair. A fractional pip is one tenth of a pip, so reading 1.08405 as five pips above 1.0840 rather than half a pip is a factor-of-ten error in the same family as the JPY pip mistake.

Used together the calculators form a loop rather than a set of separate tools. Position size fixes the lot from your risk and stop distance, pip value confirms what each pip is worth at that size, this page projects the reward at the target, and the margin calculator confirms the position fits your free margin. Working the loop on a USD account: risking 1 percent of 10,000 USD is 100 USD, a 25-pip stop on EUR/USD implies 100 / 25 = 4.00 USD per pip, which is 0.40 lots, and a 65-pip target at that size projects 65 x 4.00 = 260.00 USD gross - a reward-to-risk of 2.6 to 1. That ratio is the figure that makes trades comparable across pairs, sizes and time frames, and it is what belongs in a trade journal alongside the result.

The same short, planned stop versus a gap fill (0.30 lots GBP/USD, entry 1.2750)
pip value at 0.30 lots            = 3.00 USD per pip

Planned - stop resting at 1.2810:
  move = 1.2750 - 1.2810 = -0.0060  ( -60 pips) = -180.00 USD

Actual - market gaps, the stop fills at 1.2850:
  move = 1.2750 - 1.2850 = -0.0100  (-100 pips) = -300.00 USD

300.00 / 180.00 = 1.67x the planned loss, same order,
same stop level, no change in the trade you placed.
  • A stop marks the intended exit, not a guaranteed worst case. Gaps and slippage can exceed it.
  • Weekend and event gaps can fill far beyond the stop level, producing a larger loss than the calculator projected.
  • Round the lot size to your broker's step, and note that rounding down reduces both the projected reward and the amount at risk.
  • A fractional pip is 0.1 of a pip. Check whether your platform quotes four or five digits before reading a level.
  • Gross projected profit divided by risk gives the R-multiple, the one number that compares trades on different pairs and sizes.

Frequently asked

Does this include spread and commission?

No — the result is gross of trading costs. Subtract your broker's spread, commission and any overnight swap to get the net profit or loss.

How do I calculate P&L for a short?

Select 'Sell / Short'. The tool measures the move as entry minus exit, so a falling price produces a profit. Everything else is identical to a long.

Why is my P&L in a different currency?

P&L is first calculated in the pair's quote currency, then converted to your account currency at the current cross rate so the number matches what hits your balance.