Best browser-based game emulators for desktop in 2026 (we tested 7)

XDA-Developers ran a piece this month calling a browser-based emulator the easiest way they’d found to play retro games. The argument is hard to refute: zero install, no driver setup, runs on a Chromebook or a locked-down work laptop, supports controllers via the Gamepad API, and the host operating system effectively doesn’t matter. The category has grown enough in the last two years that there are now real choices to make about which browser emulator to use.

We tested 7 of the best browser-based game emulators for desktop. The list spans the polished open-source projects, the self-hostable libraries you can deploy on your own server, the single-developer side projects that punch above their weight, and one full PC emulator that runs inside a browser tab.

What to look for in a browser-based emulator

The “browser tab” constraint shapes what’s good in this category. Picks below favour tools that:

Quick comparison

EmulatorBest forSystems supportedSelf-host?Controller
EmulatorJSSelf-hosted librariesMany (NES through PSX)YesYes
AfterplaySimplest “drop a ROM” experienceManyNoYes
WebrcadeCurated game catalogueManyOptionalYes
RetroArch WebThe RetroArch referenceManyYesYes
EmulatorJS-loaded ROMpickerPolished UI on EmulatorJSManyYesYes
Eclipse EmulatorSingle-page simpleNES, SNES, GB, GBANoYes
v86Full PC emulationx86 PC (DOS, Win 9x)YesLimited

The 7 best browser-based game emulators

1. EmulatorJS — best for self-hosted libraries

EmulatorJS is the open-source project that compiled the RetroArch emulator cores to WebAssembly, then wrapped them in a polished web interface. The same project powers most of the polished “play classic games in a browser” sites you’ve encountered. Deploy it on any web server, point it at a ROM directory, and it handles NES, SNES, Genesis, Game Boy, Game Boy Advance, N64, PlayStation, and several other systems with controller support, save states, and configurable shaders.

For users running a personal ROM library on a home server or hosting a games corner on a small site, EmulatorJS is the standard.

Where it falls short: Self-hosting setup takes more than five minutes. ROM licensing is your responsibility. Some less common cores have rough edges.

Pricing:

Platforms: Runs in any modern browser. Self-hosted on Windows, macOS, Linux, Docker.

Download: emulatorjs.org

Bottom line: The default if you want a self-hosted personal ROM library in your browser.


2. Afterplay — simplest drop-a-ROM experience

Afterplay is the browser emulator XDA specifically highlighted as the easiest way to play retro games. Drop a ROM into the browser, the site detects the system, and play starts within seconds. Save states and saves persist in browser storage. The supported system list covers the core retro library (NES, SNES, Genesis, N64, GB/GBA, PSX) and the experience is the most polished of the no-install options.

For users who want zero setup, no self-hosting, and no account creation, Afterplay is the simplest entry to the category.

Where it falls short: Hosted only; can disappear if the project shuts down. Bring-your-own-ROM still applies. Performance on the heaviest systems (N64, PSX) varies by device.

Pricing:

Platforms: Any modern browser on Windows, macOS, Linux

Download: afterplay.io

Bottom line: The first link to send a friend who asks how to play their old ROMs without installing anything.


3. Webrcade — best curated game catalogue

Webrcade takes a different approach: rather than expecting users to bring ROMs, it curates a catalogue of legally distributed games (homebrew, open-source, and a growing list of commercial titles where the rights holder has authorised distribution). The interface is closer to a console front-end than an emulator UI, with categorised browsing and per-game art. A self-host option lets you add your own libraries.

For users who want a “browse and click play” experience without sourcing ROMs, Webrcade is closer to a streaming-service feel.

Where it falls short: Curated catalogue is smaller than what your own ROM collection might contain. Self-hosted setup is required for personal libraries. Some commercial titles come and go from the catalogue.

Pricing:

Platforms: Any modern browser. Self-hosted on Windows, macOS, Linux, Docker.

Download: webrcade.com

Bottom line: The closest browser emulation gets to a console launcher. Good for the homebrew scene.


4. RetroArch Web — the RetroArch reference

RetroArch Web is the official browser build of RetroArch, the most comprehensive open-source emulator front-end on every other platform. The web build covers most of the same systems with the same configurable cores, shaders, input remapping, and save state model. It’s the most flexible option in the category, with the same trade-off that makes desktop RetroArch divisive: configurability over convenience.

For users who already know RetroArch and want the same experience in a browser, the official web build is the canonical pick.

Where it falls short: Configuration is overwhelming on first launch. UI is dense. Loading ROMs takes more clicks than alternatives.

Pricing:

Platforms: Any modern browser

Download: retroarch.com/?page=platforms

Bottom line: The right pick for RetroArch veterans. New users should start with Afterplay or EmulatorJS.


5. EmulatorJS ROMpicker builds — polished UI on top of EmulatorJS

EmulatorJS ROMpicker projects (several community forks exist with names like NextJS-EmulatorJS) layer modern web UIs on top of the EmulatorJS core to give a console-style game library with cover art, search, and per-system browsing. These are the easiest path to a personal browser-based ROM library that looks like a streaming service.

For users self-hosting EmulatorJS who want a more polished UI than the default, the ROMpicker forks are the genre’s best front-ends.

Where it falls short: Project quality varies between forks. Setup is more involved than vanilla EmulatorJS. Cover art usually has to be sourced separately.

Pricing:

Platforms: Self-hosted on Windows, macOS, Linux, Docker

Download: Search GitHub for “emulatorjs” and “rompicker”

Bottom line: Run on top of EmulatorJS for a personal library with a real UI.


6. Eclipse Emulator — best single-page simple

Eclipse Emulator is the small open-source project that wraps NES, SNES, Game Boy, and Game Boy Advance emulation into a single static page. Drop a ROM, play. The scope is narrower than EmulatorJS but the page weight is tiny and the load time is instant.

For users who want a minimal “play this single ROM in a tab” experience without any of the complexity, Eclipse Emulator is the cleanest implementation.

Where it falls short: Limited system support. No N64 or PlayStation. Save state model is browser storage only.

Pricing:

Platforms: Any modern browser

Download: eclipseemu.me

Bottom line: When you want to play one specific NES or SNES ROM and nothing else.


7. v86 — best for full PC emulation in a browser

v86 is the browser-based x86 PC emulator that boots full operating systems (DOS, Windows 95, several Linux distributions) inside a browser tab. It’s not strictly a game emulator, but it lets you run DOS games and Windows 9x era titles in a browser context. The technical achievement is remarkable; the performance is enough for most period software.

For users who want to play DOS or early Windows games in a browser tab specifically, v86 is the genre’s leading project.

Where it falls short: Performance lags native emulators on heavier titles. Sound support has rough edges. Best for period-appropriate software, not modern Windows games.

Pricing:

Platforms: Any modern browser

Download: copy.sh/v86

Bottom line: The novelty pick that’s also genuinely useful for DOS games in a browser.


How to pick the right one

If you want zero setup and a polished UI: Afterplay. Click, drop ROM, play.

If you want to self-host a personal library: EmulatorJS, with a ROMpicker front-end on top if you want polish.

If you want a curated catalogue without sourcing ROMs: Webrcade.

If you’re a RetroArch user already: RetroArch Web. Same configuration model, same cores.

If you want a single static page for a single ROM: Eclipse Emulator.

If you specifically want DOS or Windows 9x games in a browser: v86.

FAQ

Are browser-based emulators legal?

The emulators themselves are legal in most jurisdictions. ROMs are usually not, unless you own the original cartridge or the rights holder has authorised distribution. Webrcade only hosts ROMs it has cleared; other emulators expect you to bring your own.

Do these work on Chromebooks?

Yes. Browser-based emulation is one of the few practical gaming options on a stock Chromebook, since the OS restricts native app installation. Afterplay, EmulatorJS, and Webrcade all run cleanly.

Can I use a controller?

Yes, all browser emulators on this list support the Gamepad API. Plug in or connect via Bluetooth and the browser passes input through. Xbox, PlayStation, and most third-party USB controllers work without configuration.

How well do N64 and PlayStation games perform in a browser?

On a modern mid-range laptop, most N64 and PlayStation games run at full speed in EmulatorJS, RetroArch Web, and Afterplay. Performance varies on older or low-power devices. The heaviest N64 titles can stutter.

Where do my save states go?

By default, save states live in browser storage (IndexedDB), tied to the browser and domain. If you clear browser data, you lose them. Most emulators offer an export option to download save states as files you can re-import later.

Is there a browser emulator for PlayStation 2 or GameCube?

Not yet at usable speeds. Web emulation of those systems is technically possible (PCSX2 has experimental web builds) but performance is well below native. Stick with desktop PCSX2 or Dolphin for those systems.