How to Trade Pokémon on Emulators: The Complete Guide (2026)
Trade Pokémon on MelonDS, Citra, My Boy!, PKHeX & more. Complete guide for GBA, DS & 3DS emulators.
Trading Pokémon is one of the most beloved features of the franchise—it's how you complete your Pokédex, evolve trade-only Pokémon like Gengar and Machamp, and get version exclusives. But when you're playing on an emulator, trading isn't as straightforward as on original hardware. This guide covers every method across all major emulators and generations.
Yes, absolutely. Depending on your emulator and generation, you have several options:
| Method | Best For | Difficulty |
|---|---|---|
| Local wireless emulation | DS games (MelonDS) | Moderate |
| Save file editing (PKHeX) | Any generation, solo players | Easy |
| ROM patching | Trade evolutions without trading | Easy |
| Link cable emulation | GBA games (My Boy!, mGBA) | Moderate |
| Self-trading via localhost | Citra (3DS) | Moderate |
| Hardware adapters | Real GBA + online trading | Advanced |
If you just want to move Pokémon between your own save files or evolve trade Pokémon without the hassle, PKHeX is the best solution. It's a save file editor that can simulate the results of any trade.
PKHeX lets you drag and drop Pokémon between save files. It properly handles:
- Trade evolution triggers
- OT (Original Trainer) data
- Ribbons and memories
- Cross-generation transfers (Gen 3 → 4 → 5 → 6 → 7)
-
Download PKHeX from the official GitHub repository (Windows only, but works via Wine on Mac/Linux)
-
Locate your save files from your emulator:
- DraStic: [/storage/emulated/0/DraStic/backup/]
- MelonDS: Check your configured save directory
- Delta: Use Files app → Delta folder
- mGBA: Same folder as the ROM, with extensionCopy
1.sav
-
Open both save files in PKHeX (File → Open, or open two windows)
-
Drag Pokémon from one save to the other's PC box or party
-
Save both files and transfer back to your emulator
-
For trade evolutions: After transferring, use PKHeX's "Evolve" function or simply trade the Pokémon and evolve it in-game
- Cross-generation transfers: PKHeX can move Pokémon from Gen 3 (Ruby/Sapphire/Emerald/FireRed/LeafGreen) all the way to Gen 7 (Sun/Moon/Ultra Sun/Ultra Moon)
- Legitimacy check: Pokémon moved via PKHeX are flagged as "legal" if you don't modify stats illegally—they can be transferred to Pokémon Bank/Home
- Backup your saves: Always keep original saves before editing
For players who want the authentic trading experience without modifying save files, MelonDS is the best DS emulator for trading. It supports local wireless emulation between two instances.
- MelonDS 0.9.5 or later (64-bit only)
- DS BIOS files (,Copy
1bios7.bin,Copy1bios9.bin) - dump these legally from your own DSCopy1firmware.bin - Two compatible Pokémon ROMs (e.g., Diamond & Pearl, HeartGold & SoulSilver)
- Sufficient RAM (4GB+ recommended for two instances)
Step 1: Configure MelonDS
- Open MelonDS and go to Config → General Settings
- Disable "Limit Framerate" and "Audio Sync" for smoother multiplayer
- Go to Config → WiFi Settings and enable "Indirect Mode"
Step 2: Launch Multiplayer
- From the main menu: System → Multiplayer → Launch New Instance
- A second MelonDS window labeled "MelonDS 2" will open
- Load your first ROM in window 1, second ROM in window 2
Step 3: Configure In-Game Wi-Fi
- In both games, go to the main menu → Nintendo WFC Settings
- Erase Settings for all connections (reset Wi-Fi config)
- Go to Connection 1 → Search for an Access Point
- Select "melon AP" when it appears
Step 4: Perform the Trade
- Go to any Pokémon Center and enter the Union Room (second floor)
- Both characters will appear in the same room
- Approach each other and select Trade
- Choose your Pokémon and confirm
| Problem | Solution |
|---|---|
| Emulator crashes | Close other apps to free RAM; ensure you have 64-bit Windows |
| "melon AP" not showing | Re-enable Indirect Mode; restart both instances |
| Connection errors | Verify BIOS files are correctly placed in the MelonDS folder |
| Trade fails midway | Save before trading; try slower fast-forward speeds |
Note: Older versions of MelonDS (pre-0.9.5) have unstable multiplayer. Always use the latest version.
For Pokémon X/Y, Omega Ruby/Alpha Sapphire, Sun/Moon, and Ultra Sun/Ultra Moon, Citra supports trading between two instances running on the same PC.
This method lets you trade with yourself on a single computer:
-
Open two Citra instances (run Citra twice)
-
In the first instance: Go to Multiplayer → Create Room
- Set room to "Unlisted"
- Note the room name
-
In the second instance: Go to Multiplayer → Direct Connect to Room
- Enter IP address: (localhost)Copy
1127.0.0.1 - This connects to yourself
- Enter IP address:
-
Both games will now be in the same "local" network
-
Go to the Pokémon Center → PSS (Player Search System) or Festival Plaza (depending on game)
-
Trade as you normally would between two 3DS systems
- Requires both game saves to be at the point where trading is unlocked (usually after the first gym)
- Works best with two copies of the same game (e.g., two copies of Ultra Sun)
- Can also trade between different versions (Sun & Moon)
The My Boy! emulator for Android supports link cable emulation over Bluetooth or Wi-Fi.
How to trade on My Boy!:
- Install My Boy! (paid version required for link cable support)
- Open the emulator and load your first ROM
- Go to Menu → Link Cable → Start Server (on one device)
- On the second device/instance: Menu → Link Cable → Connect to Server
- Enter the server IP address
- In-game, go to the Pokémon Center → 2nd floor → Trade
For solo trading on one phone: Run two instances using Android's split-screen or Secure Folder (Samsung).
mGBA is the most accurate GBA emulator and supports local link cable emulation:
- Open two instances of mGBA
- In each: File → Load ROM (load your two save files)
- Go to Tools → Link Device → Start Network Link on both
- Enter the same server address or use for same-PC tradingCopy
1127.0.0.1 - In-game: Pokémon Center → Trade
If you simply want to evolve trade Pokémon (Haunter → Gengar, Kadabra → Alakazam, Machoke → Machamp, Graveler → Golem) without trading, you can patch your ROM.
- Download Universal Pokémon Randomizer (Windows/Mac/Linux)
- Open your Pokémon ROM in the program
- Under "Trade Evolutions" , select "Change trade evolutions to level-up"
- Choose a level (e.g., Level 40) for evolution
- Save the patched ROM
- Play the patched ROM in your emulator
| Pros | Cons |
|---|---|
| No trading required | Modifies original game mechanics |
| Works on any emulator | Purists may dislike it |
| 100% solo-friendly | Requires a PC to patch (one-time) |
Note: Patched ROMs are generally safe and won't corrupt your save file.
Delta emulator for iPhone/iPad has experimental online multiplayer for DS games via the Patreon beta.
- Subscribe to the Delta Patreon (for beta access)
- Enable Online Multiplayer in Delta's settings
- Load two compatible Pokémon DS ROMs
- Follow the same Union Room process as MelonDS
Current Limitations:
- Still in beta; may be unstable
- Requires two separate devices for best results
- Not all games are fully supported
For GBA Pokémon games (Ruby, Sapphire, Emerald, FireRed, LeafGreen), a community project called Celio-Link enables online trading and battling using real hardware.
Celio-Link uses a USB-to-GBA link cable adapter to connect your GBA or DS (with a GBA game) to a PC. The PC then relays the connection over the internet to another player.
Requirements:
- USB to GBA Link adapter (DIY or purchased)
- Original Nintendo GBA Link Cable (with 5 pins, not 4)
- Chrome browser (uses WebUSB API)
Supported Games:
- Pokémon Ruby/Sapphire
- Pokémon FireRed/LeafGreen
- Pokémon Emerald (including contests and Battle Tower double battles)
Note: This is for real hardware, not emulators. However, the open-source design could, in theory, be adapted for emulator use.
For Pokémon Red/Blue/Yellow and Gold/Silver/Crystal, the Gambatte emulator core (available in RetroArch) supports netplay over TCP/IP.
- Install RetroArch and download the Gambatte core
- Load your Pokémon ROM
- Go to Main Menu → Netplay → Host Netplay Session (one device)
- On the second device: Netplay → Connect to Netplay Host → Enter IP
- In-game: Go to Pokémon Center → Trade (2nd floor)
This works for:
- Local network (same house)
- Internet play (requires port forwarding or VPN like Hamachi)
Confirmed working: Red ↔ Blue, Gold ↔ Silver, cross-generation trading.
| Platform | Generation | Best Emulator | Trading Method |
|---|---|---|---|
| PC | GB/GBC | Gambatte (RetroArch) | Netplay |
| PC | GBA | mGBA | Link Device (Network) |
| PC | DS | MelonDS | Multiplayer + Indirect Mode |
| PC | 3DS | Citra | Multiplayer + localhost (127.0.0.1) |
| Android | GBA | My Boy! (paid) | Link Cable (Bluetooth/Wi-Fi) |
| Android | DS | MelonDS (Android) | Indirect Mode |
| Android | GBA/DS | DraStic | PKHeX (no native trading) |
| iOS | DS | Delta (Patreon beta) | Online Multiplayer |
| Any | Any | N/A | PKHeX (save editing) |
| Any | GBA/DS/3DS | N/A | ROM patching |
PKHeX can simulate Pal Park (Gen 3 → 4), Poké Transfer (Gen 4 → 5), and Poké Transporter (Gen 5 → 6/7):
| From | To | Method in PKHeX |
|---|---|---|
| Gen 3 (GBA) | Gen 4 (DS) | Drag & drop; PKHeX auto-handles transfer |
| Gen 4 (DS) | Gen 5 (DS) | Drag & drop |
| Gen 5 (DS) | Gen 6/7 (3DS) | Drag & drop |
| Gen 1/2 (VC) | Gen 7 | Drag & drop |
Yes. Methods include:
- PKHeX: Easiest, no special setup
- Citra: Use localhost ()Copy
1127.0.0.1 - My Boy!: Use split-screen or multi-instance
- MelonDS: Launch two instances
Yes, if you properly execute a trade. If trading isn't possible, use PKHeX to evolve or patch the ROM.
Traded Pokémon created through proper emulator trading (MelonDS, My Boy!, mGBA) are identical to real hardware trades. PKHex-transferred Pokémon are considered legal (valid data) but not "legit" by strict purist standards.
Indirectly, yes. You can:
- Move Pokémon from emulator save to real hardware using a flash cart (EZ Flash, R4)
- Transfer from real hardware to Pokémon Bank → HOME
- Or use PKHeX to convert to HOME-compatible format (requires modded Switch)
For those looking to trade online using emulators like MelonDS or Citra across the internet (not just a local network), you may encounter network restrictions. Some ISPs block the custom ports these emulators use, and certain Wi-Fi networks filter peer-to-peer traffic.
This is where an emulator proxy becomes valuable. By routing your emulator's network traffic through a proxy server, you can bypass these restrictions, reduce latency for cross-region connections, and maintain a stable connection for online trades.
One reliable solution in this space is MoMoProxy, which offers dedicated proxy servers optimized for gaming and emulator traffic. With support for SOCKS5 and HTTP protocols, MoMoProxy integrates seamlessly with emulator network settings, providing low-latency connections and multiple geographic endpoints. Whether you're trading a Kadabra from HeartGold to Platinum across continents or need a stable connection behind a restrictive firewall, MoMoProxy provides the infrastructure to keep your trades successful.
- Backup saves before any trade - corruption is rare but possible
- Use PKHeX for simplicity - it's the fastest way to complete your Pokédex
- MelonDS for authenticity - if you want the real trading experience
- Patch ROMs for solo play - if you only care about evolutions, not trading
- Check emulator versions - multiplayer features improve with updates
Now go complete that Pokédex—whether you trade the traditional way or take the PKHeX shortcut, your dream team awaits.





