Blog

Article

How to Sell Covered Calls on Schwab (Step-by-Step)

A practical walkthrough of selling a covered call on Charles Schwab — how to find the chain, place the order, and avoid the most common mistakes new sellers make.

2026-05-08 · 8 min read · George Ortiz

Schwab is one of the better brokers for covered call sellers. The platform supports options trading at all standard tiers, the option chain layout is solid (especially in StreetSmart Edge), and the per-contract fee is competitive. The mechanics of placing a covered call order are straightforward once you know where to look.

This post walks through the exact steps I'd give to someone selling their first covered call on Schwab. The specifics may shift if Schwab updates their UI, but the workflow is stable.


Prerequisites

Before placing a covered call, three things need to be true:

  1. You have at least 100 shares of the underlying stock in a single account. Each covered call requires 100 shares of cover. If your shares are spread across two Schwab accounts (joint and individual, say), you can only write a call against the lot in one account.

  2. You have options approval — Level 1 or higher. Covered calls are the most basic options strategy and Schwab's Level 1 approval covers them. If you've never traded options on Schwab, you'll need to fill out the options agreement first. It's available in the account settings under "Trading" or "Permissions."

  3. You've thought through what you want to do. What strike? What expiration? Is there an earnings event in the window? This is the part most new sellers skip — and it's the most important part. The mechanical order entry is easy. The decision is what matters.

For the decision side, see What Delta for Covered Calls and When to Roll a Covered Call.


Step 1: Open the Option Chain

On the Schwab.com website:

  1. Log in.
  2. From the top nav, go to "Trade" → "Options."
  3. Type the underlying ticker (e.g., MSFT) in the symbol box.
  4. Schwab will display the option chain with calls on the left and puts on the right.

On the StreetSmart Edge desktop platform:

  1. Launch StreetSmart Edge.
  2. Use the "Options" tab in the main toolbar, or right-click a position in your portfolio and select "Trade Options."
  3. The chain opens in a dedicated panel with more granular controls than the web view.

I prefer StreetSmart Edge for actual trade execution because the chain layout is denser and the order ticket is faster. The web view is fine for quick checks.


Step 2: Filter the Chain to Find Your Strike

You're looking for a specific contract. The default chain view shows all expirations and all strikes — far too many rows to be useful. Filter:

  • Expiration: Pick a date that gives you 30-45 DTE. So if today is May 8 and you want roughly 30 DTE, look for the June 5-12 expirations.
  • Strike range: Schwab lets you narrow to "Near the money" or specific strike intervals. Set this so you see ~10 strikes above and below the current price.

Now find your target delta. In Schwab's chain layout, delta is usually displayed in one of the columns (you may need to enable it via "Customize columns"). For a covered call, you want a delta in your target range — typically 0.20-0.25 for stable names.

Look at the column for the call (left side of the chain, typically). Find the strike where the call delta matches your target. Read across to see the bid (what you'll receive selling) and the ask (what someone would pay to buy from you).

A practical example: if MSFT is at $410 and you want a 0.22 delta call at 35 DTE, you might see the $435 strike showing a delta of 0.22 with a bid of $2.40. You'd be writing this call to receive ~$240 in premium per contract.


Step 3: Open the Order Ticket

Click on the bid for your chosen strike. This typically opens a "Sell to Open" order ticket pre-filled with:

  • Action: Sell to Open
  • Underlying: The stock symbol
  • Contract: The specific option (strike + expiration)
  • Quantity: Default is 1; change to match how many calls you want to write (one per 100 shares of cover)
  • Order type: Defaults to Market, but you should change this

Critical: change the order type to Limit. Never sell options at market. Options spreads can be wide, especially for strikes away from the money, and a market sell will fill at the bid — which on a wide-spread option could be significantly below mid.

Set the limit price. A reasonable starting point: 1-2 cents above the current bid, or somewhere between bid and mid (the midpoint of bid and ask). For our example with a $2.40 bid and a $2.45 ask, you might set the limit at $2.42 or $2.43. Most market makers will fill there within a minute or two on liquid names.

If your limit is set at $2.45 (the ask), you may not get filled — market makers don't always lift their own offers. If you're impatient, $2.43 will usually fill quickly. If you're patient, $2.45 might fill if the market moves slightly in your favor.


Step 4: Verify and Submit

Schwab will show a final confirmation screen with:

  • The contract you're selling (verify the strike and expiration)
  • The quantity (verify it matches your share count / 100)
  • The limit price
  • The estimated credit (premium × 100 × contracts, minus the per-contract fee)
  • The buying power impact (should be zero or very small for a covered call — you're already long the stock)

Read this carefully. The most common mistake at this step is selling the wrong number of contracts (entering "10" when you meant "1") or selecting the wrong expiration (a date a year out instead of a month out).

Submit. The order goes to Schwab's routing engine.


Step 5: Monitor the Fill

If you set the limit between bid and mid, the order should fill within seconds to a few minutes for liquid names. If it sits unfilled for more than 5 minutes:

  • Check whether the underlying has moved. If MSFT has dropped, the option price has dropped too, and your limit may now be above the current ask.
  • Consider adjusting the limit slightly lower (more aggressive). Don't chase too hard — better to walk away than fill at a price that doesn't reflect your decision.

Once filled, the position will appear in your account. You'll see a short call position alongside your long stock position. Your account will show the premium credited (minus fees).


Step 6: Manage the Position

Once the call is open, you'll need to monitor it through expiration. The decision tree:

  • Call is OTM and you've captured 80%+ of the premium with time remaining: Buy to close to lock in profits.
  • Call is OTM with little time remaining: Let it expire worthless. The contract dissolves, you keep the premium.
  • Call is ITM near expiration: Decide whether to take assignment (sell shares at strike) or roll out and up (close the current call, open a new one further out).

For details: When to Roll a Covered Call.


What's Painful About Doing This on Schwab

Schwab's order entry is solid. The painful part isn't the mechanics — it's doing this across multiple positions every week. If you have 10 stocks you want to write calls against, you need to:

  • Open the chain for each one
  • Find the strike at your target delta
  • Check earnings/dividends manually for each
  • Open the order ticket for each
  • Set the limit, verify, submit

On a typical Sunday this takes me about 45 minutes if I'm doing it manually on Schwab's interface. I built Myron specifically to compress this into a few minutes — pull the chain for all my positions at once, filter by my target delta and DTE, see earnings/dividend flags inline, and route the orders through SnapTrade back to Schwab.

If you have 1-3 positions, doing this directly in Schwab is fine. The pain compounds fast as your portfolio grows.


Common Mistakes

A few things to avoid on Schwab specifically:

Selling at market instead of limit. Already covered. Always limit.

Wrong account selected. If you have multiple Schwab accounts, the order ticket may default to one and your shares are in another. Verify the account on the order ticket matches the account holding your shares.

Wrong contract size. Schwab options are standard 100-share contracts. Mini-options exist on some stocks but are uncommon. Default assumption: 1 contract = 100 shares.

Forgetting to check earnings. Schwab does not flag earnings on the option chain. You need to check separately (or use a tool that flags it). Writing through earnings unintentionally is the most common avoidable mistake.

For broker comparisons, see Selling Covered Calls on Fidelity, Selling Covered Calls on Webull, and Selling Covered Calls on Interactive Brokers.

Try Myron free

Connects to your broker, screens your actual portfolio, and shows yield on your cost basis.

Get Started Free →

No credit card required · Cancel anytime

Data is for educational and informational purposes only and does not constitute investment advice.