7.5Designing Effective Synthetic Tests
What to Monitor
| Journey | Priority | Frequency | Timeout |
|---|---|---|---|
| Homepage load | Critical | Every 1 min | 10s |
| User login | Critical | Every 2 min | 15s |
| Product search | High | Every 5 min | 15s |
| Add to cart | High | Every 5 min | 15s |
| Checkout flow | Critical | Every 5 min | 30s |
| API health endpoints | Critical | Every 30s | 5s |
Best Practices
Use dedicated test data. Create a "synthetic-test-product" that is always in stock, never on sale, and easily identified in analytics filters.
Tag synthetic traffic. Add a header or query parameter (
?synthetic=true) so analytics and billing systems can filter out synthetic activity.Run from multiple regions. A test passing in us-east-1 and failing in ap-south-1 immediately identifies regional issues.
Keep tests simple. Synthetic tests should be the simplest possible path through a critical flow. Complex multi-branch test logic belongs in CI, not in production monitoring.
Set aggressive timeouts. If a checkout flow takes more than 30 seconds in production, it is effectively broken regardless of whether it eventually succeeds.
Capture screenshots on failure. Attach screenshots to alert payloads so the on-call engineer can see what the user would see.