Put-Call Parity Calculator — Options Pricing Relationship
Use put-call parity to derive a fair put price from a call (or vice versa), or verify whether live option quotes are internally consistent and arbitrage-free.
Solve for
$
$
$
%
years
Fair put price implied by parity: P = C − S + PV(K)
- 1
PV of strike
100 × e^(−0.05 × 0.5) = 97.531Discount the strike price back to today using the risk-free rate. - 2
C − S
8.5 − 105 = -96.5 - 3
Implied put price
-96.5 + 97.531 = 1.0310
How does this calculator work?
Put-call parity states C − P = S − K × e^(−rT) for European options. Given any four of (C, P, S, K, r, T) you can solve for the fifth. Enter a call price to get the fair put price, or check if both quotes satisfy the no-arbitrage condition. Deviations beyond bid-ask spreads signal mispricing.
Formula
How this is calculated
Put-call parity is a no-arbitrage constraint that ties together the prices of a European call and put with the same underlying, strike and expiry. The relationship C − P = S − K × e^(−rT) follows from a simple replication argument: a long call plus a cash position equal to PV(K) replicates a long put plus the underlying stock. If either side is cheaper, you can buy it and sell the other for a risk-free profit — so in efficient markets the equality holds continuously.
The present value of the strike is PV(K) = K × e^(−rT), where r is the continuously compounded risk-free rate and T is time to expiry in years. The risk-free rate is typically proxied by a short-dated government bond yield of the same currency. For simplicity, this calculator assumes no dividends on the underlying. If the stock pays dividends, the parity becomes C − P = S − D − PV(K) where D is the present value of dividends over the option life — subtract the expected dividend PV from S before entering it.
Put-call parity applies only to European-style options (exercisable at expiry only). American-style options can be exercised early, which introduces a premium that breaks exact parity. The calculator is also a useful arbitrage check: a real deviation beyond bid-ask spreads and transaction costs signals either a mispricing or a data error.
Frequently asked questions
If you own a call option and lend the present value of the strike, your payoff is identical to owning the stock and a put option. Because two identical payoffs must have the same price in an efficient market, C + PV(K) = S + P, or equivalently C − P = S − PV(K).
Only approximately. American options can be exercised early, which gives them an early-exercise premium that breaks exact parity. For non-dividend-paying stocks the American call is never optimally exercised early, so C_American = C_European and the call side of parity is unchanged; but the American put can exceed the European put. The exact relationship becomes an inequality: S − K ≤ C − P ≤ S − PV(K).
A parity deviation (C − P − (S − PV(K))) far from zero means the options are inconsistently priced. In practice, bid-ask spreads, dividends, borrow costs and liquidity differences explain small deviations. A persistent large deviation could signal a data feed error, a corporate event (dividend, merger) not reflected in the prices, or — rarely — a genuine arbitrage opportunity.
Also known as
TG we-Calculate Editorial Team. (2026). Put-Call Parity Calculator — Options Pricing Relationship [Online calculator]. TG we-Calculate. https://we-calculate.com/calculator/put-call-parity-calculator
TG we-Calculate Editorial Team. "Put-Call Parity Calculator — Options Pricing Relationship." TG we-Calculate. 2026. https://we-calculate.com/calculator/put-call-parity-calculator.
TG we-Calculate Editorial Team, "Put-Call Parity Calculator — Options Pricing Relationship," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/calculator/put-call-parity-calculator
@misc{wecalculate_put_call_parity_calculator, title = {Put-Call Parity Calculator — Options Pricing Relationship}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/calculator/put-call-parity-calculator}}, year = {2026}, note = {TG we-Calculate} }
Did this calculator help you?
