Limits & Quotas
Every limit below is read from the same plan catalog the server enforces. Limits apply per workspace — never per member.
Package#
| Limit | Free | Pro |
|---|---|---|
| Price | $0 / workspace / month | $19 / workspace / month |
| Active HTTP monitors | 3 | 10 |
| Fastest check interval | 10 min | 5 min |
| SSL & DNS checks | Daily | Daily |
| Detailed check history | 1 day | 7 days |
| Daily uptime summaries | 7 days | 90 days |
| Log ingestion | 50 MiB / month | 1 GiB / month |
| Browser events | 5,000 / month | 50,000 / month |
| Trace spans | 50,000 / month | 1,000,000 / month |
| AI analyses | 2 / month | 20 / month |
| Log, browser & trace retention | 1 day | 7 days |
| Outage & recovery email | Included | Included |
| Capacity add-ons | Upgrade to Pro | Available |
How limits are counted#
- Active resources — enabled HTTP monitors in the workspace right now. Paused monitors don’t count.
- Monthly usage — log bytes, browser events, trace spans and AI analyses accepted since the start of the UTC calendar month. Counters reset at 00:00 UTC on the 1st; unused allowance doesn’t roll over.
- Billing → Usage shows both, with the current period’s start and end, and warns at 80% and 100%.
Monitoring#
- HTTP monitors — Free: 3 active, checked at most every 10 minutes; Pro: 10 active, at most every 5 minutes. Projects only organize monitors; they never add monitor capacity.
- Daily SSL & DNS checks — at most once every 24 hours for the hostname saved on each active HTTP monitor. SSL warns at 14, 7 and 1 days before expiry; DNS compares A, AAAA and CNAME records. They don’t count as monitors.
- History — Free keeps 1 day of individual check results and 7 days of daily summaries; Pro keeps 7 days and 90 days.
- Outage and recovery emails are included on both plans. Free alert emails share a limit of 5 per hour and 20 per day per workspace owner.
- Free monitoring capacity is limited during launch. When it is full, a new Free monitor is saved but doesn’t run until a spot opens.
- Pro only: public status pages, incidents, impact analysis on request, and Slack / Teams / Discord / webhook alert channels.
Logs, browser & traces#
- Logs are measured as canonical validated event JSON bytes before storage. The SDK caps a batch at 500 events and 64 KiB per event — see Ingestion.
- Browser events count every accepted SDK event (page views, vitals, errors, custom events).
- Trace spans are capped by count and by span data: about 1 KB of canonical span JSON per included span (≈ 50 MB on Free, ≈ 1 GB on Pro). Whichever runs out first stops ingest.
- Retention is 1 day on Free and 7 days on Pro for logs, browser data and traces. Add-ons don’t change retention.
AI analyses#
Free includes 2 and Pro 20 model-written analyses per UTC month. Each analysis has a fixed ceiling on evidence size, output length and model cost; if a request would exceed it, Mydle shows the evidence summary instead of calling the model. These ceilings are operational safeguards, not published guarantees.
When a limit is reached#
- Logs, browser events or spans: new data is rejected with
429until the month resets or capacity is added. Data already stored stays searchable for its retention period. - AI analyses: no new analyses until the month resets or capacity is added.
- Monitors: new monitors can’t be started; existing monitors keep running.
- Over-quota responses share one body:
{ "code": "QUOTA_EXCEEDED", "meter", "limit", "resetsAt" }plus aRetry-Afterheader.
Add-ons#
Pro workspaces can add monthly capacity: +5 HTTP monitors, +1 GiB logs, +50,000 browser events, +1,000,000 spans (with the matching span data), and +20 AI analyses. Add-ons renew with the Pro plan, don’t roll over and don’t change retention or check interval. Increases apply after payment; reductions take effect at the end of the billing period. Free workspaces upgrade to Pro first. See Billing.
Existing subscriptions#
Pro, annual and Team subscriptions bought before the current package keep their original limits and price until they’re cancelled. New purchases are monthly Pro only.
Failures
- Treat a non-2xx ingest response as final for that batch. On
429, wait forRetry-Afterinstead of retrying immediately. - Disabled features return entitlement errors rather than empty “success” payloads.