Built for founders, devs, and agencies

Turn boring 404 pages into a playable experience.

Play404 is an original micro-game layer you can embed in minutes. Keep visitors engaged during 404 errors, loading states, and offline moments with a polished endless runner designed for modern brands.

Vanilla JS Static deploy ready White-label friendly

How It Works

Add a single script tag, pass a config object, and mount Play404 in your 404 or loading container. No frameworks, no backend, no heavy dependencies.

1. Drop the script

Load play404.js from your project or CDN path. Works on static sites and SPAs.

2. Configure your brand

Set title, subtitle, colors, CTA, obstacle density, speed, and leaderboard placeholder in seconds.

3. Ship a better fallback

Visitors stay engaged instead of bouncing when routes fail, content stalls, or connectivity drops.

Use Cases

Gamified 404 pages

Turn dead-end URLs into memorable brand moments with instant replay value.

Loading experiences

Reduce perceived wait time during async flows or long import operations.

Offline fallback widget

Offer light entertainment in flaky network conditions while users wait to reconnect.

Ecommerce retention

Keep shoppers engaged instead of exiting when they hit invalid product paths.

Feature Grid

Productized, commercial-friendly, and intentionally lightweight for real production pages.

Original endless runner

Auto-run gameplay with jump + slide controls, custom mascot, and non-derivative obstacle design.

Difficulty scaling

Speed ramps over time with configurable spawn density to tune casual vs challenging sessions.

Mobile-ready controls

Keyboard, tap, and on-screen buttons with pause/resume support for all breakpoints.

Performance-first

Canvas + vanilla JS architecture optimized for fast load and static hosting.

Local high scores

Persistent score tracking with localStorage and optional share-score placeholder action.

Analytics hooks

Subscribe to play404:* events or pass onEvent callbacks for product metrics.

Licensed Install Example

After purchase, you get your licensed script package and install instructions. Add it to your 404, loading, or offline page in minutes.

<div id="play404-root"></div>
<script src="/assets/play404.min.js"></script>
<script>
  // Provided after purchase
  window.Play404License = { key: "YOUR_LICENSE_KEY" };

  window.Play404.create("#play404-root", {
    titleText: "Page not found",
    subtitleText: "Play while we get you back on track",
    accentColor: "#4f9cff",
    backgroundColor: "#0f172a",
    buttonLabel: "Go Home",
    ctaLink: "/",
    obstacleDensity: 1.1,
    difficultySpeed: 1,
    enableLeaderboardPlaceholder: true
  });
</script>

What You Get

  • Licensed script file for production use
  • Simple config keys for text, colors, and gameplay
  • 404 template and implementation examples
  • Unlimited website usage with lifetime license
  • Future updates included

Need full-page implementation? Use the bundled 404 template after purchase.

Lifetime License

A single, honest price for developers and indie builders. Pay once and keep it.

See What You Install

This is the same lightweight runner your visitors will see on your 404 or loading page.

  • Loads fast and runs in any modern browser
  • Keyboard and touch controls out of the box
  • Simple config for text, colors, and CTA

Lifetime License

$9

One-time payment. Use Play404 on unlimited websites with full access to the script and customization options.

  • Use on unlimited websites
  • Full source code access
  • Easy customization
  • Lightweight JavaScript
  • Works on any website
  • Free future updates
Get Lifetime Access

FAQ

Is Play404 a clone of existing browser runner games?

No. Play404 uses original visuals, mascot geometry, obstacle set, and UI language while staying familiar to the endless runner genre.

Does this require a backend?

No backend is required. Everything runs statically with localStorage for high score persistence.

Can agencies white-label it for clients?

Yes. The product structure is designed for white-label packaging and handoff-ready documentation.

Can I connect a real leaderboard later?

Yes. An enable/disable leaderboard placeholder is already included as an extension point.