June 17th, 2025

Checkly Groups Update: Organize Checks Your Way

We’ve made some big improvements to how groups work in Checkly. Until now, group-level settings like locations and alerting were always enforced. Every check in a group had to follow the same configuration. With this update, those overrides are now optional, allowing you to group checks more flexibly and keep individual settings where needed.

Quick refresher: How groups worked until now

Groups in Checkly have always let you share configuration like API checks defaults and environment variables. But for the following four settings:

  • Scheduling strategy (parallel & round-robin)

  • Locations (private & public)

  • Retries (none, fixed, linear & exponential)

  • Alert settings (global & custom)

…these were always enforced. Every check in a group automatically inherited the group’s values for these settings, with no way to opt out.

With this release, that’s changing. Use overrides when you want to standardize configuration across checks, or turn them off and manage settings per check. Groups can now act more like folders, with zero config shared, giving you more flexibility.

What’s changing with groups?

We’re making group-level overrides for scheduling strategy, locations, retries and alert settings optional. Here’s what that means:

  • Groups that exist in your account today will keep their current configuration, but you can now go in and opt out of specific overrides.

  • Any groups you create from now on will start with overrides disabled by default. They’ll behave like simple folders unless you explicitly define configuration.

Let’s break it down:

👉🏼 For UI users

You’ll now see toggle switches under “Scheduling & Locations” and “Retries & Alerting” in the group settings.

Check it out directly in the Groups UI: app.checklyhq.com/groups/new/edit/scheduling

👉🏼 For Monitoring as Code (MaC) users

With the latest releases of the CLI (v6.0.0), we’ve introduced a new construct called CheckGroupV2 that reflects the new behavior. The previous CheckGroup construct is now deprecated.

const group = new CheckGroupV2('check-group-1', {
  name: 'Group',
  frequency: Frequency.EVERY_15M, 
  locations: ['us-east-1', 'eu-west-1'], 
  concurrency: 10, 
  browserChecks: { 
    frequency: Frequency.EVERY_30M, 
    testMatch: '*.spec.js' 
   } 
})

⚠️ Important note when migrating to CheckGroupV2:

  • In the deprecated CheckGroup, if you didn’t define values for runParallel, locations, alertEscalationPolicy, or retryStrategy, Checkly would apply default values behind the scenes. All checks in the group would run with the same settings, even if you hadn’t explicitly set them.

  • In CheckGroupV2, no value = no override. If these fields are left undefined, the group won’t apply any shared configuration. Each check will simply use its own individual settings.

Please double-check your group definitions when migrating to ensure check behavior stays consistent. Checks may behave differently than before if they now fall back to their own settings instead of group-level defaults.

🔧 Heads up: Terraform & Pulumi support coming soon

Support for the new group behavior in Terraform and Pulumi is still in development. We’ll let you know as soon as it’s available.

Reference

You can find more details about the updated group behavior in our documentation:

We’re excited to hear what you think about this update. As always, feel free to reach out via the Checkly Community Slack or support if you have any questions!