Migrate

How to Migrate Gmail to Yahoo Mail

Migrate Gmail to Yahoo Mail using IMAP, app passwords on both sides, and a label-to-folder plan that keeps Sent, Drafts, and threads intact.

DO

Dan Okafor

MSP Practice Lead

· 11 min read
Laptop on a desk during an email migration

Gmail-to-Yahoo migrations look trivial on paper — both providers speak IMAP, both have well-known endpoints, and both let you generate app passwords. In practice, the work sits in the auth flow and the label mapping. Yahoo requires two-step verification before it will issue an app password, Google requires the same on its side, and Gmail's label model does not translate cleanly to Yahoo's folder tree. This guide walks you through a Gmail-to-Yahoo move that ends with a clean Yahoo mailbox, correct Sent and Drafts placement, and no duplicates.

Gmail
Yahoo Mail

Skip the manual setup — let Mailbox Taxi handle it

One desktop app, every IMAP provider, zero data leaving your machine.

Why Gmail-to-Yahoo trips people up

The first surprise is that Yahoo no longer accepts your real account password for IMAP. You can sign in to the web interface with your normal password, but imap.mail.yahoo.com will reject it with AUTHENTICATIONFAILED. You have to enable two-step verification on the Yahoo account, then generate an app password from the Account Security panel. The same is true on the Gmail side: 2-Step Verification has to be on before you can generate an app password, and OAuth is the preferred path if your tool supports it.

The second surprise is folder semantics. Gmail labels are tags. A single message with two labels shows up under two labels and also under All Mail, but there is one underlying copy. Yahoo folders are real folders. A naive copy that walks every Gmail label folder plus All Mail can land three or four copies of the same message in Yahoo. You either skip All Mail, skip the labelled folders, or use a migration tool that de-duplicates messages by Message-Id.

The third surprise, and the one nobody warns you about, is Yahoo's throttling. Yahoo's IMAP server tolerates 2 to 4 parallel connections per mailbox cleanly. Push past that and you start seeing Too many simultaneous connections and stalled appends. Engineers used to Microsoft 365 sometimes try 10 or 20 threads, and Yahoo simply refuses.

Prerequisites and pre-flight checks

The prep work below takes about 20 minutes per mailbox. Skipping any of it is the most common cause of failed runs.

On the Yahoo side

  • Two-step verification enabled at account.yahoo.com under Account Security. Without it, the app-password generator is hidden.
  • An app password generated under Account Security → Generate app password. Yahoo shows you a 16-character string once. Copy it immediately into your password manager.
  • A confirmed mailbox state. Sign in to mail.yahoo.com once and make sure the account is not in a recovery-locked or restricted state. New Yahoo mailboxes occasionally need an extra verification step before they accept IMAP.
  • Storage headroom. Yahoo's free tier is generous, but very large Gmail archives can still hit account-level rate limits before they hit the size limit. Be prepared to upgrade if you are migrating a 30GB lawyer's archive.

On the Gmail side

  • IMAP enabled in Gmail's web settings under See all settings → Forwarding and POP/IMAP.
  • Two-Step Verification on at myaccount.google.com, which is the gate for either OAuth tokens or app passwords.
  • A decision on All Mail. Either copy it and skip labelled folders, or copy labelled folders and skip All Mail. Doing both creates duplicates.
  • Forwarding rules disabled if you do not want messages bouncing back to Yahoo during cutover.

Two-step verification is not optional

Both Gmail and Yahoo now require two-step (or 2-Step) verification before they will issue app passwords. Turn it on, save the recovery codes, and confirm you can still receive SMS or use the authenticator app before you generate the app password. Locking yourself out of the source account mid-migration is the worst kind of recoverable mistake.

For deeper background on app passwords across providers and why they exist, see what an app password actually is. If Gmail rejects the password you just generated, jump to fix Gmail app password before you spend an hour rerunning the migration.

The migration procedure

The steps below assume a desktop IMAP migration tool that can connect to both Gmail and Yahoo. The same flow works if you script imapsync manually, with the usual caveat that you lose progress tracking and resume.

  1. Confirm the Yahoo mailbox is ready

    Sign in to mail.yahoo.com with the destination credentials in a private browser window. Make sure the inbox loads, there are no security prompts pending, and the account is not in a partial-recovery state. New mailboxes sometimes need a phone-number confirmation before IMAP is fully enabled.

  2. Enable two-step verification on Yahoo

    Go to account.yahoo.com → Account Security. Turn on two-step verification. Yahoo will text or call to verify. Save the backup codes somewhere safe. Without 2SV, the Generate app password button never appears.

  3. Generate a Yahoo app password

    Still under Account Security, click Generate app password. Yahoo will ask for a label — use something descriptive like Mailbox Taxi migration. It shows you the 16-character string once, in a small modal, in the format abcdefghijklmnop. Copy it to your password manager immediately. You cannot view it again; you can only revoke it and generate a new one.

  4. Prepare the Gmail source

    In Gmail, open Settings → See all settings → Forwarding and POP/IMAP and make sure IMAP is enabled. Then look at the label list and make decisions:

    • Which labels become folders in Yahoo?
    • What happens to nested labels like Clients/Acme/2024?
    • Are you copying All Mail, or only labelled folders?
    • Which system labels (Important, Categories, Chats) do you skip?
  5. Generate Gmail credentials

    If your migration tool supports OAuth, use that path. Tokens are easier to scope and revoke. If you need an app password, go to myaccount.google.com → Security → App passwords, generate one, and label it. 2-Step Verification must already be on.

  6. Map Gmail labels to Yahoo folders

    Open your tool's mapping screen. Set explicit mappings for the four important ones:

    • [Gmail]/Sent MailSent
    • [Gmail]/DraftsDraft
    • [Gmail]/All Mail → skip (assuming you are copying labelled folders)
    • [Gmail]/Spam → skip (or → Bulk Mail if you really need it)

    For everything else, decide whether to preserve nesting or flatten. For deeply nested label trees, flattening with a hyphenated naming convention often reads more cleanly in Yahoo's folder list.

  7. Pilot one mailbox end-to-end

    Pick one mailbox or one labelled folder of a few hundred messages and run it through. Open the result in Yahoo Mail's web interface and in a desktop client. Check: Sent folder is populated, Drafts is populated, attachments open, Unicode subjects read correctly, dates match Gmail's, and folder names are not encoded as IMAP UTF-7. A clean pilot saves you a full-batch rerun.

  8. Run the full migration

    Start the full run with 2 to 4 IMAP threads. Yahoo tolerates that range cleanly; above 4, expect rate-limit pushback. Monitor the log for AUTHENTICATIONFAILED, Too many simultaneous connections, and Message too large for destination. Resume-on-failure should be on so a transient network blip does not force a full restart.

  9. Verify and notify users

    Compare per-folder message counts. Allow for variance on Drafts (Yahoo and Gmail handle auto-save drafts differently) and on multi-labelled messages (which should consolidate, not duplicate). Update mail-client settings to imap.mail.yahoo.com (port 993, SSL) and smtp.mail.yahoo.com (port 465 or 587). Tell users when to switch.

Gotchas specific to Gmail-to-Yahoo

A short list of pair-specific issues that come up often enough to warn about.

Sent and Drafts folder names matter. Yahoo's canonical names are Sent and Draft (singular), not Sent Mail or Drafts. If your tool creates Sent Mail as a new folder, the Yahoo web interface will not light up the Sent icon and users will think their sent history is gone. Map explicitly.

Categories are not a folder. Gmail's tabbed inbox (Primary, Social, Promotions, Updates, Forums) uses Categories, not labels. Most migration tools skip them. If a user has organised by Category, you may need to convert Categories to labels in Gmail before the migration so the data is actually copyable.

Auto-replies and filters do not migrate. IMAP only moves messages. Vacation responders, filters, and forwarding rules stay on the Gmail side. Plan to recreate the important ones on Yahoo by hand.

Gmail's Important flag has no Yahoo equivalent. If users rely on Important, that signal is lost. Stars usually survive as flags, but only if your tool maps them.

Large attachments fail late. Yahoo's per-message ceiling on IMAP append sits a little below 25MB depending on plan. Messages near the ceiling fail with Message too large for destination. Log those, then either accept the loss or re-upload via the Yahoo web interface where the limits are sometimes higher.

Throttle by default

Default to 2 IMAP threads per mailbox the first time you migrate to Yahoo. If the run is clean, you can push to 4 on the next batch. There is no upside to 8 — Yahoo will simply refuse half the connections.

Errors you will see

The pattern-matching list. Knowing the error saves time on diagnosis.

  • AUTHENTICATIONFAILED on Yahoo despite a fresh password. You almost certainly turned off two-step verification (which invalidates app passwords) or you copied the wrong string. Regenerate.
  • AUTHENTICATIONFAILED on Gmail. The app password was revoked, often because someone changed the main Google password. Regenerate.
  • Too many simultaneous connections from imap.mail.yahoo.com. Drop concurrency to 2.
  • STARTTLS handshake failed. Some old configurations try imap.yahoo.com on port 143; use imap.mail.yahoo.com on 993 with SSL.
  • Message too large for destination. Attachments exceeding Yahoo's per-message ceiling. Log and skip.
  • OAuth2 token expired on the Gmail side. Re-authenticate and resume.
  • Folder UTF-7 conversion error on labels with emoji or non-ASCII characters. Rename the label on the Gmail side before retrying.

For more on the IMAP terms in these messages, the IMAP protocol glossary is the quick reference. If your destination ended up being Microsoft 365 instead of Yahoo, the closest analogous procedure is migrate Gmail to Outlook. If the destination is Apple's iCloud, see migrate Gmail to iCloud. And the reverse direction — moving a Yahoo mailbox into Gmail — lives at migrate Yahoo to Gmail.

Communicating the cutover

User communication is what makes or breaks the project from a perception standpoint. The technical work succeeds quietly; the user perception comes from the email you sent them on Friday.

A typical cadence: a week out, send a heads-up explaining what is changing and why, plus a short setup guide with the Yahoo IMAP and SMTP settings. Three days out, send a reminder with the cutover time. The day of, send a 15-minute warning. The day after, send a wrap-up with instructions for removing the old Gmail account from their mail client and a contact for any problems.

Pick a cutover window outside peak email hours. For most teams, that means Friday evening or Saturday morning. Yahoo's IMAP is reasonably fast on re-sync, but a mailbox with 30,000 messages still takes a few minutes per client to index.

For project-level planning across a multi-mailbox migration, the complete email migration guide covers DNS, scheduling, and rollback. Read it once before you commit to a cutover date.

Try Mailbox Taxi

Migrate your mailbox the easy way

Join the waitlist for early access and lock in launch pricing.

Related reading

Try Mailbox Taxi

Migrate your mailbox the easy way

Join the waitlist for early access and lock in launch pricing.