Skip to content
Telemetry
For web teams connecting Core Web Vitals to routes and releases

Frontend Performance Monitoring with SQL

Track typed LCP, INP, and CLS samples by stable route and release, then use SQL to find frontend regressions without collecting raw URLs or page content.

Reviewed by the Telemetry product team on . Event contract, recommended analysis, and privacy boundaries. Review standards and ownership

Why this works
  • Preserve each web vital and its unit instead of collapsing experience into one opaque score.
  • Tie performance changes to stable route templates, release identifiers, and sufficient sample counts.
  • Keep query strings, raw URLs, page contents, and unrestricted user identifiers out of the event contract.
Use-case evidence path

Frontend Performance Monitoring with SQL: from implementation to decision

A complete frontend performance monitoring with sql measurement loop connects one owned workflow, a bounded event contract, a controlled fixture, and a question someone can act on.

  1. 1

    Set the boundary

    Choose the product routes and supported performance metrics that matter.

  2. 2

    Capture the outcome

    Begin with frontend_vital_measured, frontend_navigation_completed, frontend_resource_failed and document the grain of each event.

  3. 3

    Prove the rows

    Review route-level samples and thresholds before enabling release guardrails.

  4. 4

    Make the decision

    Which routes have the weakest passing-sample rate?

Agent prompt

Paste this into your coding agent

Replace YOUR_API_KEY after signup, then ask the agent to run the product flow and verify the first events.

agent prompt

Frontend Performance Monitoring with SQL setup prompt

text
Instrument frontend performance with Telemetry.

Use /skill.md and this Telemetry API key: YOUR_API_KEY

Add typed frontend_vital_measured events with route_template, release, metric_name, metric_value, metric_unit, threshold_version, passed, device_class, and environment.

Create SQL and a dashboard for sample count, LCP, INP, CLS, and passing-sample rate by route and release. Require a reviewed minimum sample count before comparing releases or enabling an alert.

Use route templates, bounded device classes, and versioned thresholds. Do not log raw URLs, query strings, DOM content, form values, cookies, auth tokens, or unrestricted user identifiers.

Setup steps

  1. 1Choose the product routes and supported performance metrics that matter.
  2. 2Emit typed browser measurements with route, release, threshold version, and environment.
  3. 3Send synthetic passing and failing samples from a test release.
  4. 4Review route-level samples and thresholds before enabling release guardrails.

Events to capture

frontend_vital_measuredfrontend_navigation_completedfrontend_resource_failedfrontend_release_observed

Questions unlocked

  • Which routes have the weakest passing-sample rate?
  • Did the latest frontend release change LCP, INP, or CLS?
  • Is a regression broad or limited to a reviewed device class?

Event schema starting points

Review the row grain, emit boundary, required types, privacy classes, example payload, and validation checklist before adapting a query or snippet to production.

Related product capability

Continue this workflow in Alerts

Promote the reviewed reliability query into an owned threshold and response workflow.

Related SQL recipes

Answer the next question with SQL

Run the query against the structured fields from this workflow, inspect the example result, and turn a useful answer into a dashboard or alert.

Browse all recipes
Complete collectionsFrontend reliability SQL

Next step

Create the API key your agent will use

The free plan is enough to run the prompt, send test events, and review the first dashboard.

Related pages