What a Bull Call Spread Does
A bull call spread is a two-option position designed to have a positive expiration payoff when the underlying price rises, while keeping that payoff bounded. The position buys a call with a lower strike price and sells a call with a higher strike price. Both calls refer to the same underlying asset and have the same expiration date.
The lower-strike call gives the position value as the underlying price rises above that strike. The short higher-strike call offsets some of that value once the underlying rises above its strike. As a result, the spread’s expiration payoff increases between the strikes and then stops increasing above the higher strike.
The formulas below describe the option payoff at expiration, before accounting for premiums paid or received, financing, transaction costs, taxes, or exercise-related costs. Assume standard calls whose expiration payoffs are determined by the underlying price \(S_T\) at expiration. The payoff per underlying unit for one matched pair of calls is
The subtraction is important: the first term is the payoff on the call the investor owns, while the second is the amount owed on the call the investor has written. The option positions must be matched in quantity for this expression to describe one standard spread.
Deriving the Three Expiration Regions
The payoff depends on where \(S_T\) falls relative to \(K_1\) and \(K_2\). Split the possible prices into three regions and apply the call payoff formula in each one.
If \(S_T\leq K_1\), both calls finish out of the money. Each call has zero payoff, so the spread payoff is zero.
If \(K_1<S_T\leq K_2\), the long call has payoff \(S_T-K_1\), while the short call has zero payoff. The spread payoff is \(S_T-K_1\).
If \(S_T>K_2\), both calls finish in the money. Subtracting the short-call payoff from the long-call payoff gives \((S_T-K_1)-(S_T-K_2)=K_2-K_1\).
Therefore the payoff per underlying unit is
At \(S_T=K_1\), the payoff is zero. At \(S_T=K_2\), the middle expression gives \(K_2-K_1\), the same value as the expression for prices above \(K_2\). Thus the payoff is continuous at both strikes. The spread’s payoff can rise only over the interval from \(K_1\) to \(K_2\); once the underlying is above \(K_2\), the two calls respond equally to any further price increase, so their additional payoffs cancel.
Worked Examples
Worked Example: Evaluating a Spread at Three Expiration Prices
An investor buys one call with strike \(K_1=\$48\) and sells one call with strike \(K_2=\$57\). Both calls expire on the same date and cover one underlying unit. Calculate the payoff per spread if the expiration price is \(\$43\), \(\$52\), or \(\$63\). Also find the total payoff for 75 identical spreads in each case.
Method. Use the long-call payoff minus the short-call payoff, then multiply the result by 75. The strikes satisfy \(48<57\), so this is the required long-lower, short-higher construction.
At \(S_T=\$43\). Both calls finish below their strikes: \(\max(43-48,0)=0\) and \(\max(43-57,0)=0\). The payoff per spread is \(0-0=\$0\); for 75 spreads it is \(75\times0=\$0\).
At \(S_T=\$52\). The long call pays \(\max(52-48,0)=\$4\). The short call pays zero because \(\max(52-57,0)=0\). The payoff per spread is \(4-0=\$4\); for 75 spreads it is \(75\times4=\$300\).
At \(S_T=\$63\). The long call pays \(\max(63-48,0)=\$15\). The short call payoff is \(\max(63-57,0)=\$6\), which is subtracted because the investor wrote that call. The payoff per spread is \(15-6=\$9\); for 75 spreads it is \(75\times9=\$675\).
Check. The maximum payoff per spread is the strike difference, \(57-48=\$9\), and the \(\$63\) scenario is above both strikes. Its payoff of \(\$9\) per spread, or \(\$675\) for 75 spreads, is consistent with the cap.
Common mistake avoided: Counting only the long call at \(\$63\) would give \(\$15\) per spread. That ignores the \(\$6\) owed on the short call and overstates the spread payoff.
Worked Example: Applying a Contract Multiplier
A fund buys 12 calls with strike \(\$36\) and sells 12 calls with strike \(\$44\). Each contract represents 100 underlying units, and all 24 options have the same expiration. Calculate the position’s total expiration payoff when \(S_T=\$41\), \(\$49\), and \(\$32\).
Method. First find the payoff per underlying unit for one matched pair of calls. Then multiply by the total number of underlying units represented by the 12 spreads: \(12\times100=1{,}200\).
At \(S_T=\$41\). The long call pays \(\max(41-36,0)=\$5\), and the short call pays \(\max(41-44,0)=\$0\). The per-unit payoff is \(5-0=\$5\). The position payoff is \(1{,}200\times\$5=\$6{,}000\).
At \(S_T=\$49\). The long call pays \(\max(49-36,0)=\$13\), and the short call pays \(\max(49-44,0)=\$5\). The per-unit payoff is \(13-5=\$8\). The position payoff is \(1{,}200\times\$8=\$9{,}600\).
At \(S_T=\$32\). Both calls finish below their strikes, so each has payoff \(\$0\). The position payoff is \(1{,}200\times0=\$0\).
Check. The strike difference is \(44-36=\$8\). Since \(\$49\) is above both strikes, the payoff is capped at \(\$8\) per underlying unit. Multiplying by 1,200 units gives the calculated total of \(\$9{,}600\).
Common mistake avoided: Multiplying by 12 rather than by \(12\times100\) would treat each contract as if it covered only one unit. The stated multiplier is part of the position size.
Worked Example: Checking Position Direction and the Payoff Cap
A hypothetical exchange-traded contract has a multiplier of 25. A trader buys six calls at strike \(\$105\) and sells six calls at strike \(\$119\), all with the same expiration. Calculate the total payoff if \(S_T=\$112\), \(\$124\), or \(\$100\). Explain why this is a bull call spread.
Method. Confirm first that the lower-strike call is the one bought and the higher-strike call is the one sold. Then calculate the payoff per unit and multiply by \(6\times25=150\) underlying units.
Position check. The trader is long the \(\$105\) call and short the \(\$119\) call, with \(105<119\). The position therefore has the required bull call spread orientation.
At \(S_T=\$112\). The long call pays \(\max(112-105,0)=\$7\), while the short call pays zero because \(112<119\). The per-unit payoff is \(\$7\), giving a total payoff of \(150\times\$7=\$1{,}050\).
At \(S_T=\$124\). The long call pays \(\max(124-105,0)=\$19\), and the short call pays \(\max(124-119,0)=\$5\). The per-unit payoff is \(19-5=\$14\), giving a total payoff of \(150\times\$14=\$2{,}100\).
At \(S_T=\$100\). Both calls finish out of the money. The payoff per unit is \(\$0\), so the total payoff is \(150\times\$0=\$0\).
Check. The strike difference is \(119-105=\$14\). At \(\$124\), the price is above both strikes, so the calculated payoff reaches the cap of \(\$14\) per unit. The position payoff is \(150\times\$14=\$2{,}100\).
Common mistake avoided: A position that buys the \(\$119\) call and sells the \(\$105\) call reverses the legs. It is not this bull call spread; in the \(\$124\) scenario, its per-unit payoff would be \(5-19=-\$14\), not \(+\$14\).
Payoff Is Not the Same as Investment Profit
The payoff function describes what the option positions deliver at expiration. It does not include the initial premiums. For example, a spread can have a positive expiration payoff and still have an overall loss if the amount paid to establish the position is greater than the value ultimately received. Conversely, a payoff of zero does not mean that the position had no initial cash flow.
A bull call spread is described as limited-risk because the two-call position has a finite downside: its expiration payoff cannot fall below zero. If the spread was opened for a net debit, the amount paid to establish it is also bounded and represents the potential loss before considering financing, fees, or other costs. Calculating the exact initial cash flow, profit, or breakeven requires the option premiums as well as the expiration payoff; those quantities should not be confused with the payoff table derived here.
The key exam check is to keep three details separate: which call is long, which call is short, and how many underlying units the contracts represent. A correct region calculation with a reversed sign or missing multiplier still produces an incorrect position payoff.
Check Your Understanding
For each problem, calculate the requested expiration payoff. Unless a multiplier is stated, treat each spread as covering one underlying unit.
- A trader buys a call at strike \(\$25\) and sells a call at strike \(\$31\). The trader holds 40 matched spreads. What is the total payoff when \(S_T=\$29\)? (Answer: \(\$160\))
- An investor holds eight bull call spreads, each made from a long \(\$52\) call and a short \(\$61\) call. Each contract has a multiplier of 100. What is the total payoff when \(S_T=\$58\)? (Answer: \(\$4{,}800\))
- A position has 15 spreads, each long a \(\$70\) call and short a \(\$82\) call. Find the total payoff at \(S_T=\$66\), \(\$76\), and \(\$90\). (Answer: \(\$0\), \(\$90\), and \(\$180\), respectively)
- A trader holds 10 spreads, each consisting of a long call at \(\$43\) and a short call at \(\$50\). Each contract has a multiplier of 100. What is the total payoff when \(S_T=\$56\)? (Answer: \(\$7{,}000\))
- A position buys nine calls at strike \(\$95\) and sells nine calls at strike \(\$84\), with the same expiration and one underlying unit per call. What is its total payoff at \(S_T=\$100\), and is its orientation that of a bull call spread? (Answer: \(-\$99\); no, the lower-strike call is short and the higher-strike call is long)