The options income ledger
Premium collected is not your return, and a ledger with only a premium column cannot tell you whether the year worked. The book this series follows collected $4,598 across 46 trades and the account gained $7,168, and reconciling those two numbers requires a share column measured against the assignment strike. Measure it against the tax basis instead and the same year overstates itself by exactly $588.
Most premium sellers keep a spreadsheet with a date, a ticker, a credit, and a running total. That spreadsheet cannot answer the only question that matters.
The year, by cycle
$50,000, six names, eight cycles of 46 days, mechanical rules and no discretion.
| Cycle | Trades | Premium | Assigned | Called away | Nothing sold | Cumulative premium |
|---|---|---|---|---|---|---|
| 1 | 6 | $546 | 0 | 0 | 0 | $546 |
| 2 | 6 | $552 | 0 | 0 | 0 | $1,098 |
| 3 | 6 | $612 | 5 | 0 | 0 | $1,710 |
| 4 | 6 | $548 | 0 | 0 | 0 | $2,258 |
| 5 | 6 | $503 | 0 | 2 | 0 | $2,761 |
| 6 | 5 | $619 | 0 | 0 | 1 | $3,380 |
| 7 | 6 | $634 | 0 | 0 | 0 | $4,014 |
| 8 | 5 | $584 | 0 | 0 | 1 | $4,598 |
$4,598 on $50,000 is 9.2 percent, and the premium column is beautifully steady. Every cycle between $503 and $634, including the cycle that assigned five positions. Premium income barely notices a crash, which is precisely why a premium-only ledger is dangerous.
The two columns you need
Same year, by name, with the share move alongside.
| Ticker | Trades | Premium | Assigned | Called away | Share move | Net |
|---|---|---|---|---|---|---|
| AMD | 8 | $2,131 | 1 | 1 | $1,000 | $3,131 |
| MU | 8 | $1,591 | 1 | 1 | $500 | $2,091 |
| INTC | 8 | $341 | 1 | 0 | $690 | $1,031 |
| KMI | 8 | $252 | 1 | 0 | $520 | $772 |
| T | 8 | $204 | 0 | 0 | $0 | $204 |
| WBD | 6 | $79 | 1 | 0 | -$140 | -$61 |
| Total | 46 | $4,598 | 5 | 2 | $2,570 | $7,168 |
WBD is the row that justifies the whole exercise. Six trades, every one of them a winner, $79 collected, and the position lost money. A premium-only ledger records six wins and a $79 gain. The account is down $61.
It also shows where the money came from. AMD and MU are $5,222 of the $7,168, and both are the names a concentration limit would have removed. The ledger is where that tension becomes visible instead of theoretical.
The reconciliation, and the $588
A ledger that does not tie to the account balance is decoration. Here is the tie.
| Share move against the strike | Share move against the tax basis | |
|---|---|---|
| Opening balance | $50,000 | $50,000 |
| Premium collected | $4,598 | $4,598 |
| Realized on shares sold | $1,500 | $1,993 |
| Unrealized on shares held | $1,070 | $1,165 |
| Total | $57,168 | $57,756 |
| Account actually is | $57,168 | $57,168 |
| Error | none | $588 too high |
$588 is not a rounding artifact. It is exactly the put premium on the five assigned positions: $278 on AMD, $215 on MU, $43 on INTC, $40 on KMI, $12 on WBD.
Here is why. When a put is assigned, your cost basis for tax is the strike less the premium you received, so AMD came in at $110.22 rather than $113. That basis reduction and the premium are the same $278 of money. Put the premium in the income column and then measure the shares against the reduced basis, and you have counted it twice.
The fix is one line: the share column measures against the assignment strike, not against the tax basis. The basis is a tax concept and it belongs on the tax page, not in your performance ledger. Two different numbers answering two different questions, and this is the single most common way a premium seller's spreadsheet flatters itself.
What else the ledger has to hold
Four columns beyond the obvious, each because something in this year would otherwise vanish.
- Cycles where you sold nothing. WBD produced two, in cycles 6 and 8, because no strike at or above its $9.88 basis was worth more than $10. Those rows have no credit and they are not missing data, they are the position telling you it is stuck. Cluster F has the full treatment.
- Collateral committed, by cycle. Return on $26,800 deployed is a different number from return on $50,000, and both are worth knowing. The book earned 14.3 percent on the account and 26.7 percent on the money actually at work.
- Days held, per lot. Assigned shares start a fresh holding period the day after assignment, and both call-aways here were 92 days, which is short-term. You cannot reconstruct that from a premium ledger.
- Commissions. 46 trades plus 7 assignments and exercises. At a dollar a contract that is real money against $4,598, and on smaller credits it is the whole trade.
The three questions a good ledger answers
Did the year work? Premium plus share move, tied to the balance. Here: $7,168, up 14.3 percent.
Where did it come from? Two names out of six. That is a concentration finding, not an income finding.
What did it cost to get? Five assignments in one cycle, $26,800 of collateral immobilised, and two positions capped below where the stock ended.
A premium column answers none of those. It answers "how much cash came in", which feels like the question and is not.
OptionsKing scores every candidate strike on a deterministic 0 to 100 scale, blends that score with the return on the capital the trade ties up, and shows you the highest-ranked handful. There is no minimum score. How it works covers what the ranking does and does not tell you.
Questions people actually ask
How should I track options premium income?
With at least two columns: premium collected, and the share move on any position that was assigned, measured against the assignment strike. In the worked year premium was $4,598 and the account gained $7,168, so the premium column alone was wrong by $2,570.
What is the most common mistake in an options income spreadsheet?
Counting the premium twice. If you record the credit as income and also measure assigned shares against their reduced tax basis, you double count. On the worked book that inflated the year by exactly $588, the put premium on the five assigned positions.
Is premium collected the same as my return?
No. The worked book collected 9.2 percent of the account in premium and returned 14.3 percent, and one position collected $79 across six winning trades while losing $61 overall.
What should I record for a cycle where I sold nothing?
The row, with no credit and the reason. Two cycles in the worked year had no covered call on one name because no strike above its cost basis was worth $10. A blank row is the position telling you it is stuck.
Sources
Rules and thresholds above were checked against these documents on August 4, 2026. Exchange and broker rules change. Confirm anything you are about to act on with your own broker.
Keep reading
Do the math on your own trade
Every price in this article is an illustrative worked example, not a quote. Read Running the book for the rest of the series, and the disclaimer before you act on any of it. Selling options carries real risk of loss, and the loss can be far larger than the premium you collected.