← All scenarios

Slow connection (3-second delay)

Simulates what a visitor on a slow connection sees — typical for mobile users on cellular networks, or users in regions with poor connectivity. wire.js delivery is held back by 3 seconds while the rest of the page loads normally. This is the clearest, most deterministic reproduction of the V1 bug: every reload, V1 cannot fire because the page finished loading before wire.js arrived.

Each side runs the same scenario in its own iframe. The iframes load independently, so you can see how each pixel version behaves under identical conditions.

How to test:
  1. Load the page and wait about 5 seconds. Both iframes load almost instantly, but wire.js delivery is held back.
  2. Watch the timing: window.load fires within ~1 second, then there’s a ~3-second gap before wire.js downloads.
  3. Once wire.js finishes, look at the pixel column on each side.
Expected: V1 — pixel never fires. The load listener inside V1 was registered after window.load had already happened, so it has nothing to listen for. V2 — pixel fires within a fraction of a second of wire.js arriving, because it doesn’t wait for any page event.
V1 · current pixel
Verdict
Initialising…
window.load
—
wire.js
—
pixel
—
Event timeline
  1. No events recorded yet…
Script tag for this scenario
// Injected after a 3-second delay
<script type="text/javascript" async src="https://staging-api.wire.spbx.app/wire.js?account_id=79&property_id=6a2111320c2dee2dc5548935"></script>
V2 · proposed fix
Verdict
Initialising…
window.load
—
wire.js
—
pixel
—
Event timeline
  1. No events recorded yet…
Script tag for this scenario
// Injected after a 3-second delay
<script type="text/javascript" async src="https://staging-api.wire.spbx.app/wire.js?pixel_id=6a211df10c2dee2dc5548936&account_id=79&property_id=6a2111320c2dee2dc5548935"></script>