Plan limit reference
Your plan sets these limits (see your exact numbers on Quota & limits):
| Limit | Controls |
|---|---|
max_devices |
How many devices you can register |
min_publish_interval_ms |
Minimum gap between a device's messages |
max_tenant_msgs_per_sec |
Aggregate messages/sec across all devices |
max_msgs_per_hour |
Per-device hourly cap (if set) |
max_dashboards / max_widgets |
Dashboard and per-dashboard widget counts |
max_rules |
Number of alerting rules |
allowed_actions |
Which rule action types you can use |
max_action_fires_per_month |
Monthly action-fire budget (0 = unlimited) |
max_storage |
Telemetry storage in MB (0 = unlimited) |
telemetry_retention_days |
How long your readings are kept (0 = the platform default of 365 days) |
event_retention_hours |
How long events are kept |
store_telemetry |
Whether history is stored at all (realtime-only tiers = false) |
allowed_egress_types |
Which integrations you can use |
max_egress_destinations |
How many integration destinations you can have. Each one receives its own copy of every matching message |
jobs_enabled / max_job_profiles |
Whether you can run jobs, and for how many machines |
job_report_retention_days |
How long a generated job report is kept (0 = forever) |
max_monitors |
Number of uptime monitors (monitors also use a device slot) |
uptime_retention_days |
How far back uptime history can be read |
max_seats |
Team members who can share the account |
About telemetry retention
telemetry_retention_days is how far back your stored readings go. Free accounts keep 60 days;
paid plans keep 12 months.
Two things are worth knowing. Readings past your window are deleted and cannot be restored — export anything you need to keep before changing plans. And if you move to a plan with a shorter window, nothing is removed during the notice period, so you have time to export or change your mind.
max_storage is a separate ceiling: whichever you reach first is the one that applies.
About job report retention
A job report is generated the first time you open it, and it freezes that job's readings so the
record stays fixed. job_report_retention_days is how long we keep that frozen copy.
If your plan's window is a year or less, nothing is lost when a report ages out: the underlying telemetry is still stored, so opening the job simply builds the report again with the same numbers. Longer windows exist for records you need to produce after the telemetry itself has expired.
For how the rate limits behave in practice, see understanding rate limits.