Interactive launches fail in a predictable way: the ambitious feature is built first, the fallback is scoped at the end, and by then there is neither time nor appetite for it. So the fallback becomes a blank rectangle and an apology.

Invert the order

We build the no-JavaScript, no-WebGL, slow-connection version first and ship it to staging. It is usually a curated gallery, a static table, a plain form. It is not exciting. It is a floor, and having a floor changes every conversation that follows.

If you would not be willing to launch the fallback, the fallback is not finished — and neither is your plan.

The load-day argument this wins for you

It also tends to produce a better architecture. If the page works without the clever part, the clever part can be an isolated island loaded after first paint, which means it cannot take the page down when forty thousand people arrive in ten minutes.

  • Build and ship the degraded path before the feature.
  • Agree a performance budget in numbers, before the build.
  • Keep the interesting component isolated and late-loaded.
  • Be online on launch day. There is no substitute for this.

Related work: Northmark's launch generated 40,000 plates client-side with no downtime, on a static page with one interactive island.