IRS Form 1099-R Distribution Code G Meaning: Direct Rollover

Direct answer: irs form 1099-r distribution code g means a direct rollover from a qualified plan, a section 403(b) plan, or a governmental section 457(b) plan to another eligible retirement plan or IRA. The money moves straight from plan to plan. You never hold it. In most cases, no tax is due at that time.
Key Takeaways
- irs form 1099-r distribution code g = direct rollover, not a cash payout to you.
- For a standard rollover to another pre-tax plan or IRA, Box 2a should usually be zero.
- A direct rollover to a Roth IRA is still Code G, but the taxable part in Box 2a is taxed.
- Do not use Code G for a designated Roth account rollover to a Roth IRA. That is Code H.
- On 2026 forms the code sits in Box 7a. On earlier forms it sat in Box 7.
- Still report the 1099-R on your return, even when Box 2a is zero.
irs form 1099-r distribution code g: Direct Rollover
Form 1099-R reports money paid out of pensions, annuities, retirement plans, and IRAs. The payer files it for distributions of $10 or more. Box 1 shows the gross amount. Box 2a shows the taxable amount. The distribution code tells the IRS what kind of payout it was.
The IRS Instructions for Forms 1099-R and 5498 define the code as: “G — Direct rollover and direct payment.” The instructions say to use Code G for a direct rollover from a qualified plan, a section 403(b) plan, or a governmental section 457(b) plan to an eligible retirement plan. An eligible plan can be another qualified plan, a section 403(b) plan, a governmental section 457(b) plan, or an IRA.
A direct rollover is a direct payment. The old plan sends the money straight to the new plan or IRA. You do not receive a check you can spend. That is the key difference from an indirect rollover, where you receive the money and must redeposit it within 60 days.
Code G also covers a direct payment from an IRA to an accepting employer plan, and direct rollovers that are in-plan Roth rollovers. The common thread is the same: the money moves without passing through your hands as spendable cash.
Why Code G Usually Means No Tax Now
When money moves from one pre-tax account to another pre-tax account, nothing has left the retirement system. The tax is deferred again, not forgiven. You will pay tax later, when you take the money out for good.
That is why Box 2a is usually zero for a standard Code G rollover. Box 1 shows the full amount that moved. Box 2a shows the taxable part. If the whole amount went into another pre-tax plan or IRA, the taxable part now is zero.
This is the most common misunderstanding about Code G. People see a large number in Box 1 and worry they owe tax on it. Box 1 is the gross amount that moved. Box 2a is what counts as income now. For a clean pre-tax to pre-tax rollover, Box 2a should be zero, and no tax is due on that rollover.
If Box 2a is not zero on a rollover you expected to be fully pre-tax, ask the payer how it was figured before you file. A wrong Box 2a is easier to fix before filing than after a notice arrives.
The Roth Exception: Code G Can Still Be Taxable
There is one major exception. A direct rollover from a pre-tax employer plan into a Roth IRA is still reported with Code G. The money moves directly, so the code is correct. But the move from pre-tax to Roth is a conversion. The taxable part becomes income in the year of the rollover.
In that case, Box 2a shows the taxable portion of the transfer. You owe ordinary income tax on that amount, even though the code is G. The code tells the IRS how the money moved. Box 2a tells the IRS how much is taxable. Both facts matter, and they can point in different directions.
Do not skip reporting a Roth conversion rollover because the code is G. Report the taxable amount from Box 2a as income. Keep records showing the rollover went into a Roth IRA, so you can answer questions later.
Code G vs. Code H: The Roth Account Trap
Code G and Code H look alike, and mixing them up is a common error. The IRS rule is clear: do not use Code G for a direct rollover from a designated Roth account to a Roth IRA. Use Code H for that move.
A designated Roth account is the Roth part of a workplace plan, such as a Roth 401(k). Rolling that money into a Roth IRA is a Roth-to-Roth move. It keeps the Roth character of the money. Code H marks that fact.
By contrast, Code G covers a rollover from a pre-tax qualified plan, 403(b) plan, or governmental 457(b) plan. It also covers a pre-tax plan rollover into a Roth IRA as a conversion, as described above. The source account decides which code fits.
If your 1099-R shows Code G but the money came from a designated Roth account and went to a Roth IRA, ask the payer about a corrected form. If it shows Code H, the Roth-to-Roth character is preserved.
Code G vs. Other 1099-R Distribution Codes
Code G is only one code in a longer list. The nearest neighbours are the ones filers confuse it with:
| Code | Meaning | When it appears |
|---|---|---|
| G | Direct rollover | Money moves trustee-to-trustee to another plan or IRA |
| H | Direct rollover of a designated Roth account | Designated Roth account money moves to a Roth IRA |
| 7 | Normal distribution | At age 59½ or older, or when no other code applies |
| 1 | Early distribution, no known exception | Under 59½ with no exception the payer knows about |
| 2 | Early distribution, exception applies | Under 59½, but an exception is known |
An indirect rollover is the sharpest contrast. If you receive the money yourself and redeposit it within 60 days, the 1099-R will usually show IRS Form 1099-R Distribution Code 1 Meaning: Early Distribution, No Known Exception if you are under 59½, or IRS Form 1099-R Distribution Code 7 Meaning: Normal Distribution if you are 59½ or older. Code G means that 60-day race never started, because you never held the money.
For the full early-distribution pair, see IRS Form 1099-R Distribution Code 2 Meaning: Early Distribution, Exception Applies.
| Check this | What it tells you |
|---|---|
| Did you ever hold the money? | If not, Code G fits. If you held it, look for Code 1 or Code 7 instead. |
| Is Box 2a zero? | Zero fits a pre-tax to pre-tax rollover. A Roth conversion shows a taxable amount. |
| Was the source a designated Roth account? | A Roth-to-Roth rollover should be Code H, not Code G. |
| Did the money go to a Roth IRA? | From a pre-tax plan, that is still Code G, but the taxable part is income now. |
How to Report a Code G Rollover
Work through the boxes in order:
- Box 1, gross distribution. This is the total amount that moved.
- Box 2a, taxable amount. Zero for a standard pre-tax rollover. The taxable part for a Roth conversion.
- Box 4, federal income tax withheld. A direct rollover usually has no withholding. If tax was withheld, ask why.
- Box 7a (2026) or Box 7 (earlier years), distribution code. Code G confirms a direct rollover.
Report the 1099-R on your return even when Box 2a is zero. Leaving it off can trigger a notice proposing tax on the full Box 1 amount. The IRS receives its own copy, and a missing form looks like unreported income.
The money you deferred into a workplace plan during your working years showed up on your W-2 first. For the pre-tax version, see IRS W-2 Box 12 Code D Meaning: 401(k) Elective Deferrals. For the Roth version, see IRS W-2 Box 12 Code AA Meaning: Roth 401(k) Contributions. For every W-2 code in one place, see W-2 Box 12 Codes Explained: Complete Guide.
What To Do When You See Code G
Follow these steps, in order:
- Confirm the money went straight to the new plan or IRA. If you held it, Code G may be wrong.
- Check Box 2a against your records. Zero fits a pre-tax rollover. A Roth conversion should show a taxable amount.
- Confirm the source account type. A designated Roth account rollover to a Roth IRA should be Code H.
- Report the form even when Box 2a is zero. Do not skip it because no tax is due.
- Check your wage and income transcript if anything looks off. Pull it through the IRS Get Transcript tool and compare the figures to your 1099-R. If you are unsure how to read it, use How to Read an IRS Account Transcript: Step-by-Step Guide.
- Keep the 1099-R with your tax records. The IRS receives its own copy, and a mismatch can trigger a notice.
Once your return is filed, you can follow Tax Refund Status to track any refund. Any refund the IRS issues posts to your transcript as IRS Code 846: Refund Issued.
The official code list is in the IRS Instructions for Forms 1099-R and 5498. The W-2 code list is in the IRS General Instructions for Forms W-2 and W-3.
Related Guides
- IRS Transcript Codes: Complete List and Meanings
- IRS Form 1099-R Distribution Code 7 Meaning: Normal Distribution
- IRS Form 1099-R Distribution Code 1 Meaning: Early Distribution, No Known Exception
- IRS Form 1099-R Distribution Code 2 Meaning: Early Distribution, Exception Applies
FAQ
What does irs form 1099-r distribution code g mean?
It means a direct rollover. The money moved straight from a qualified plan, a 403(b) plan, or a governmental 457(b) plan to another eligible plan or IRA, without you holding it.
Is a Code G rollover taxable?
Usually not at that time, if it moves from one pre-tax account to another pre-tax account. Box 2a should then be zero. A rollover into a Roth IRA is the exception: the taxable part in Box 2a is income.
Do I need to report a Code G 1099-R if Box 2a is zero?
Yes. Report the form even when no tax is due. Leaving it off can trigger a notice proposing tax on the full amount in Box 1.
What is the difference between Code G and Code H?
Code G is a direct rollover from a pre-tax plan. Code H is a direct rollover from a designated Roth account to a Roth IRA. Do not use Code G for a Roth-to-Roth rollover.
Where is Code G on a 2026 Form 1099-R?
In Box 7a. The 2026 forms renumbered the old Box 7 to Box 7a. On earlier forms, the code sits in Box 7.
Can Code G appear with another code?
Yes. Code G can pair with a second code that adds detail, such as Code 4 or Code B. Read both codes together. The first code is the main story.
Disclaimer: This post is general information only and is not tax advice. Every tax situation is different. For advice about your own 1099-R, consult a qualified tax professional or contact the IRS directly.