Yorker vs Grafana Synthetic Monitoring

Vanilla Playwright, OTLP everywhereWithout the k6 complexity

Grafana Synthetic Monitoring is built on the k6 engine and the k6 browser API — a scripting layer you have to learn — and the results stay inside Grafana Cloud. Yorker wraps vanilla Playwright, the same code as your local tests, and emits standard OTLP into the backend you already run. No k6 API, no Grafana subscription required to start.

Last verified 2026-06-13

the browser check scripting difference
// Grafana Synthetic Monitoring: k6 browser API
import { browser } from 'k6/browser'

export default async function () {
  const page = await browser.newPage();
  await page.goto('https://example.com');
  await page.close();
}

// Yorker: vanilla Playwright
// @step: Visit homepage
await page.goto('https://example.com');
// No imports, no wrapper, same Playwright API

Understanding Grafana's synthetic landscape

Grafana has multiple overlapping synthetic/testing products. Here's how they relate: it matters for understanding what you're buying.

Grafana Synthetic Monitoring
Active

The uptime and browser check product inside Grafana Cloud. Ping, DNS, TCP, HTTP, and k6 browser checks. Free tier available. This is what this comparison page covers.

Grafana Cloud k6
Active (k6 Cloud migration target)

Grafana's cloud platform for k6 load tests and performance testing scripts. k6 Cloud (the standalone SaaS) is winding down; users are migrating here. This is a performance testing tool, not a synthetic monitoring tool.

k6 Cloud
Sunsetting

The original k6 SaaS for running load tests. Being sunset; existing users are migrating to Grafana Cloud k6. If you came here because of k6 Cloud news, note that Grafana Synthetic Monitoring is a different product.

Why teams pick Yorker over Grafana Synthetic

Vanilla Playwright, not the k6 browser wrapper

Grafana browser checks use the k6 browser API, a wrapper around Playwright with its own JavaScript interface. Yorker runs vanilla Playwright async functions: the exact same code as your local Playwright tests. No k6 API to learn, no import statements, just page.goto().

OTLP to any backend, not just Grafana Cloud

Grafana Synthetic Monitoring results live in Grafana Cloud's internal data stores. Yorker emits OTLP from every check run: send it to ClickStack, Grafana Cloud, Honeycomb, Dash0, or any OTLP-compatible backend. You don't need a Grafana subscription to get synthetic telemetry.

W3C traceparent, always on

Yorker injects a W3C traceparent header into every browser check request, linking synthetic runs to your backend distributed traces. Grafana Synthetic Monitoring does not document traceparent injection; trace correlation requires a Grafana Tempo setup on the backend trace side.

Simpler pricing model

Grafana counts 'executions' as probes × tests × runtime-minutes × frequency-factor. A 5-minute browser test from 3 probes every 5 minutes = 3,024 executions/day. Yorker counts check runs. One model is simpler to forecast, especially when scaling up coverage.

Screenshot filmstrip on every run

Yorker captures a per-step screenshot sequence for every browser check run: the full filmstrip is how you debug what changed between a passing and failing run. Grafana Synthetic Monitoring does not include per-step filmstrips in its browser check output.

Private locations included in the base plan

Grafana Synthetic Monitoring private probes run as a self-hosted Synthetic Monitoring Agent you deploy and operate yourself. Yorker includes private location agents in the $29.99 platform plan with private-location runs at half the hosted rate — managed alongside your hosted checks, no separate infrastructure to babysit.

Feature-by-feature, tier-by-tier

Grafana's pricing model counts "executions" (probe × test × runtime-minutes × frequency-factor), not check runs. The free tier caps at 100k API / 10k browser executions/mo. The Pro tier ($19/mo platform fee) removes the hard cap and bills overage at $5/10k API and $50/10k browser executions. Private probes run as a self-hosted agent on either tier. Enterprise requires a $25k/year minimum commitment.

Feature-by-feature, tier-by-tier
Capability
Yorker
Platform · $29.99/mo
Grafana Synthetic
Free (100k API / 10k browser/mo)
Grafana Synthetic
Pro · $19/mo + overage
HTTP / API checks
HTTP, DNS, TCP, ping, traceroute probes.
IncludedIncluded (100k/mo free)Included + pay-per-use
Browser checks
Headless browser with user-journey testing.
Included in plan (Playwright)10k executions/mo free$50 per 10k executions overage
Browser engine
What powers browser checks.
Playwright (vanilla)k6 browser (k6 API)k6 browser (k6 API)
Private locations
Run checks from behind your firewall.
Included, half-rate runsSelf-hosted agentSelf-hosted agent
OpenTelemetry export
OTLP metrics to any external backend.
Included, OTel-nativeGrafana Cloud onlyGrafana Cloud only
W3C trace propagation
traceparent injected into check requests.
Always onNot documentedNot documented
Monitoring as Code
Check definitions in source control.
YAML (CLI)Terraform / APITerraform / API
Screenshot filmstrip
Per-step visual evidence on every run.
IncludedNot includedNot included
Scripting language
What you write browser check scripts in.
TypeScript / async functionk6 JavaScript APIk6 JavaScript API

Pricing verified June 13, 2026 from grafana.com/pricing and grafana.com/products/cloud/synthetic-monitoring/. Grafana Free: $0, 100k API + 10k browser executions/mo; Pro: $19/mo + $5/10k API overage + $50/10k browser overage; Enterprise: custom, $25k/year minimum. Yorker platform plan $29.99/mo, full pricing at /pricing. "Test execution" definition: one test × one probe location × one minute of runtime. Spot something changed? Email [email protected].

Frequently asked

What is the k6 Cloud wind-down and how does it affect Grafana Synthetic Monitoring?

k6 Cloud was Grafana's standalone SaaS for k6 load testing (not synthetic monitoring). It is being sunset and users are migrating to Grafana Cloud k6. Grafana Synthetic Monitoring (the synthetic check product built into Grafana Cloud) is a separate product that continues. If you use Grafana Synthetic Monitoring for uptime checks, the k6 Cloud wind-down does not directly affect you, though the underlying browser engine is 'powered by k6 browser.'

Does Yorker integrate with Grafana?

Yes. Yorker emits OTLP metrics and traces, and Grafana Cloud accepts OTLP natively. Point Yorker's OTLP endpoint at your Grafana Cloud stack and synthetic check results appear in your Grafana dashboards alongside your other metrics, without paying for Grafana Synthetic Monitoring separately.

How does the 'test execution' pricing model compare to Yorker's plan pricing?

Grafana counts one execution as one test running in one probe location for one minute of runtime. A 5-minute browser test from 3 probe locations = 15 executions. The Pro tier includes 10,000 browser executions ($50/10k overage). Yorker includes browser check runs in the platform plan with a monthly allowance: a simpler model if your usage is predictable.

Do both tools support private locations / private probes?

Grafana Synthetic Monitoring private probes run as a self-hosted Synthetic Monitoring Agent: you deploy the agent via Docker or Kubernetes and it registers as a custom probe (the documented requirement is the Grafana Admin role). Yorker includes private location agents in the platform plan ($29.99/month) with private-location runs at half the hosted rate. Both are outbound-only agents.

What's different about k6 browser checks vs Yorker's Playwright checks?

Both are Playwright under the hood, but k6 browser exposes a JavaScript API wrapping Playwright (import { browser } from 'k6/browser') rather than vanilla Playwright. Yorker runs vanilla Playwright async functions, the same code that runs in your local Playwright tests. No k6-specific API to learn.

Does Grafana Synthetic Monitoring export OTel like Yorker?

Grafana stores synthetic monitoring results in Grafana Cloud's internal data stores; they are queryable via Grafana's UI and API but do not emit OTLP to external backends. Yorker emits OTLP from every check run to any backend you configure, including Grafana Cloud if that's your stack.

Synthetic monitoring without the stack lock-in

Start free, no credit card, and send synthetic telemetry to any OTel backend. Yorker works alongside Grafana Cloud, not instead of it.