- Form 1099-R reports distributions from annuities, pensions, IRAs, and retirement plans — generally any distribution of $10 or more, sent by January 31.
- Box 1 is the gross distribution; Box 2a is the taxable amount — and when Box 2b's 'taxable amount not determined' is checked, computing it is your job, not the carrier's.
- Box 7's distribution code tells the IRS what kind of distribution occurred; code 7 is normal, code 1 is early, code G is a direct rollover, code 6 is a 1035 exchange.
- A 1099-R does not always mean taxable income: rollovers and 1035 exchanges generate the form with little or no taxable amount.
- Distributions land on Form 1040 lines 4a/4b (IRAs) and 5a/5b (pensions and annuities) — gross on the a line, taxable on the b line.
Every January, the same envelope confuses several million households: Form 1099-R, reporting a retirement distribution that may be fully taxable, partly taxable, or a complete non-event — and the form itself will not always tell you which. Here is the box-by-box reading, the code table, and the two errors that reliably cost people real money. Verify anything consequential against the current IRS instructions for the form at irs.gov; the layout below reflects the form's longstanding structure.
What the form is and who sends it
Form 1099-R reports distributions from pensions, annuities, retirement plans, IRAs, and insurance contracts — generally any distribution of $10 or more. The payer (your annuity carrier, plan administrator, or IRA custodian) files it with the IRS and must furnish your copy by January 31. One form per payer per distribution type, so an active year can produce a small stack.
The critical mindset: the 1099-R is a report of movement, not a bill. Some of the most routine forms — rollovers, exchanges — carry no tax at all. The boxes, not the form's arrival, determine what you owe.
The boxes that matter, in order
Box 1 — Gross distribution. Everything that left the contract or account, before withholding, taxable or not.
Box 2a — Taxable amount. The payer's statement of how much of Box 1 is taxable — when the payer knows. On a qualified annuity this is usually the full amount; on an annuitized non-qualified contract it is Box 1 minus your exclusion-ratio basis recovery.
Box 2b — the two checkboxes. Taxable amount not determined means the payer is not computing 2a — see the next section, because this checkbox is where the money gets lost. Total distribution means the account or contract was fully emptied.
Box 4 — Federal income tax withheld. Withholding already sent to the IRS on your behalf; it joins your other payments on the 1040. State equivalents appear in boxes 14–15.
Box 5 — Employee contributions / insurance premiums. Frequently your recovered basis for the year — the after-tax money coming back to you. When 1 minus 5 equals 2a, the form is showing you the exclusion-ratio arithmetic directly.
Box 7 — Distribution code. The single most important box on the form: a letter or number telling the IRS what kind of event this was, and therefore how it expects the tax to work.
"Taxable amount not determined," handled correctly
When that Box 2b checkbox is marked — routine with non-qualified annuities, older contracts, and accounts with after-tax money — the payer is explicitly handing you the computation. Box 2a may be blank, zero, or unhelpfully equal to Box 1.
The correct response is to compute the taxable amount from your own records: premiums paid (your basis), prior withdrawals, and the contract type's ordering rule — gain-first for deferred withdrawals, exclusion-ratio for annuitized payments, as our taxation guide details. The two failure modes are mirror images: reporting the full Box 1 as taxable when part was your own money back (overpayment, common), or reporting none of it (underpayment, letter from the IRS, eventually). If the basis records are gone, the carrier's policy-history department can usually reconstruct premiums paid — ask before defaulting to the expensive assumption.
The Box 7 code table
| Code | Meaning | What it implies |
|---|---|---|
| 1 | Early distribution, no known exception | Under 59½; expect the 10% additional tax unless you claim an exception on Form 5329 |
| 2 | Early distribution, exception applies | Under 59½ but payer knows an exception — e.g. a 72(t) schedule |
| 3 | Disability | Penalty exception for disability distributions |
| 4 | Death | Paid to a beneficiary or estate; no early-withdrawal penalty |
| 6 | Section 1035 exchange | Tax-free contract exchange; typically nothing taxable |
| 7 | Normal distribution | 59½ or older; ordinary rules, no penalty |
| G | Direct rollover | Plan-to-plan or plan-to-IRA; taxable amount typically zero |
| W | LTC rider charges | Charges for a long-term care rider under a combination contract |
The most common codes, per the form's longstanding structure; the full alphabet lives in the IRS instructions. Codes can pair (e.g. 4G, a rollover by a beneficiary). If the code contradicts what actually happened — a 1 where a 2 belongs, a missing G on a rollover — request a corrected form from the payer; an exception can also be claimed on Form 5329 where applicable, but the clean fix is the corrected 1099-R.
Forms that are not tax bills
Three routine cases generate a 1099-R with little or no tax attached, and each January they generate panic anyway. A direct rollover — 401(k) to IRA, say — reports the full amount in Box 1, zero in 2a, code G. A 1035 exchange between annuity contracts reports with code 6, preserving deferral; the form documents the swap. Rider charges under code W report an internal contract mechanic. In each case the form's job is surveillance, not taxation — but it must still be entered on the return, gross on the a line, taxable on the b line, so the IRS's copy and yours agree.
Landing it on the 1040
IRA distributions: lines 4a (gross) and 4b (taxable). Pensions and annuities — including every non-qualified annuity: lines 5a and 5b. Withholding from Box 4 aggregates with your other payments. When a and b differ, the return is silently asserting a reason — a rollover, recovered basis, an exclusion ratio — and the supporting arithmetic should exist in your records, because a large a-to-b gap is precisely the pattern automated matching flags for a letter.
One seasonal note worth acting on: everything above is knowable before the form arrives. Distributions taken this year generate next January's forms — which means the time to fix a mis-coded withdrawal, document basis, or split a distribution across tax years is now, while the transaction is still warm. The taxpayers who have a calm February are the ones who read this page in the fall.
Frequently asked
Holding a 1099-R that doesn't look right?
Wrong codes and blank taxable amounts cause real overpayments. Send the form's numbers — not the document itself — and we will tell you what it is claiming happened and whether that matches reality.
Book a Free Review →