Все статьи
Этап 2: Анализ причин2. Problem Aware ➔ 3. Solution Aware.5 мин чтения2026

The anatomy of a click: what happens between ad tap and script execution

To an everyday marketer, clicking an ad seems instantaneous: tap link, page loads, session recorded....

To an everyday marketer, clicking an ad seems instantaneous: tap link, page loads, session recorded.

Open Chrome DevTools under the Performance and Network tabs, however, and web physics tell a different story: between a user tapping an ad on their smartphone and the moment your JavaScript tag fires its analytical payload, between 1,500 and 4,000 milliseconds elapse.

In mobile browsing, three seconds is a long time. During that window, a chunk of your paid traffic hits the back button before your tracking container even initializes.


1. The 7 phases of a web click

According to the W3C Navigation Timing specification, every web navigation traverses seven sequential steps:

[AD CLICK INITIATED] (0 ms)
       │
       ▼
 1. DNS Lookup (30–150 ms) ────────► Resolves domain name to destination IP
       │
       ▼
 2. TCP + TLS Handshake (50–200 ms) ─► Establishes encrypted HTTPS socket
       │
       ▼
 3. TTFB: Server Response (100–500 ms) ► Origin server processes request and sends 1st byte
       │
       ▼
 4. HTML Parsing & CSS (300–800 ms) ─► Browser builds DOM and downloads render-blocking CSS
       │
       ▼
 5. Download JS Bundles (500–1200 ms) ► Browser fetches gtag.js, gtm.js, or pixel tags
       │
       ▼
 6. DOMContentLoaded (1200–2500 ms) ─► DOM is interactive; scripts begin executing
       │
       ▼
 7. Script Execution (1500–3500 ms) ─► ANALYTICS SENDS HIT (Session recorded)

Phase breakdown:

  1. 0–200 ms (The network handshake): the mobile device connects, resolves DNS, and executes a TLS 1.3 handshake.
  2. 200–700 ms (Time to First Byte): your web server generates the response and transmits the first packet of HTML.
  3. 700–1,500 ms (Parsing and blocking resources): the browser constructs the DOM tree. If your site includes heavy fonts or CSS, rendering pauses.
  4. 1,500–3,500 ms (Analytics initialization): the browser downloads large JavaScript bundles, parses them in the V8 engine, and executes the tracking call.

Only at step 7 does your analytics dashboard log a visit. If the user disconnects at step 4, the ad network keeps your money, while your analytics platform records nothing.


2. The early bounce blindspot

What happens when someone taps your ad while on a spotty 4G connection:

Timeline from Ad Tap:
0.0 sec ── User taps ad. Google Ads / Meta charges your account $3.50.
1.0 sec ── Mobile screen remains blank; HTML is still transferring.
1.7 sec ── User gets impatient and swipes back to their feed.
-------------------------------------------------------------------------
RESULT:
- Ad Dashboard: Clicks = 1 | Cost = $3.50
- Analytics Dashboard: Sessions = 0 | Bounces = 0 (Total Data Blackout)

In GA4, this user does not register as a 100% bounce rate session. They never exist at all in your analytics reports.

You cannot see:

  • Which ad placements or keywords generated these quick drop-offs.
  • Whether the traffic was click fraud or legitimate users stuck behind poor TTFB.
  • Which landing pages lose the most mobile ad spend before tag initialization.

3. Client-side JavaScript vs. edge-level logging

Dimension Client-Side Tag (GA4 / Meta Pixel) Edge Click Tracking (Sply)
Where logging occurs In the browser after JS downloads At the Edge gateway server
Time to first log 1,500–3,500 ms 20–50 ms
Mobile hardware dependency High (slow CPUs delay execution) Zero (handled at server level)
Early bounce capture Misses up to 25% of mobile traffic Captures 100% of incoming clicks
Ad blocker resilience Vulnerable to script blocking Immune (1st-party HTTP request)

4. How edge click tracking works

Edge Click Tracking shifts logging from the visitor’s browser to a globally distributed network of edge nodes.

Ad Tap ➔ HTTP GET /landing?gclid=789&utm_source=meta
                      │
                      ▼ (15–30 ms)
             [Nearest Edge Node]
              │                │
              │                ├──► Async Edge Logging (event.waitUntil)
              │                     (Logs click, sets 1st-party cookie, filters bots)
              ▼
    [Stream HTML & Assets to Browser]

Execution steps:

  1. The user's request hits the nearest edge Point of Presence (PoP).
  2. The edge worker extracts URL query parameters (gclid, fbclid, utm_*) and device headers in 20 ms.
  3. Using non-blocking event.waitUntil(), the edge node records the click in the analytics database while streaming HTML to the user.
  4. If the user leaves after 400 ms, the click and campaign attribution are already safely stored in your warehouse.

Next steps

Ключевые темы статьи:
#navigation timing api click to script execution#why client analytics lag#ttfb domcontentloaded impact on tracking#bounce before analytics tag fires#edge click logging vs browser js.

Внедрите Server-Side Tracking без сложного кода

Sply восстанавливает до 30% потерянных конверсий, защищает от Safari ITP/AdBlock и ускоряет загрузку ваших лендингов.

Рекомендуемые материалы

Смотреть все статьи →