June 23rd, 2025
We’ve shipped a ton of new stuff since the last changelog digest:
Converting your Checkly setup to code has been simplified with the new import
command. Starting with version 5.4.1
, the Checkly CLI now lets you import UI-created resources into your repository, making it easy to switch from a UI-driven workflow to a code-first workflow, powered by Monitoring as Code.
If you are managing your Checkly setup from the web UI today, and you want to migrate to a fully code-driven workflow, the new import
command is for you.
In case you haven’t, please install the CLI first by following these steps.
Simply run this command in your repo and follow the steps to complete the import of all your UI assets:
$ npx checkly import
With the checkly import
command, you can:
Move your existing UI setup into your code base
Keep your monitoring history and check relationships intact
Review and test before committing anything
Finalize the transition when you’re ready
Read all the details here.
We shipped some big new updates for our Checkly AI features to help you assess and triage any Playwright failures better and (much) quicker, including:
We’ve upgraded our model and added more data sources like network logs and your script code to get higher fidelity answers to the question: “Why did my Playwright-based check fail and who’s impacted?”
To make the end-user impact analysis as descriptive as possible, you can enrich any tags you use in Checkly in the Tag Description Editor. This data is then used as context by Checkly AI to give you more accurate descriptions that match your organization’s internal lingo.
By default, Checkly AI works with OpenAI GPT-4.1, but you can now bring your own LLM from a preferred supplier. We have built-in support for Azure-hosted models and Google Gemini models.
This is currently available upon request for Enterprise customers.
Group-level settings for Scheduling, Locations, Retries, and Alerting were previously always enforced. Every check in a group automatically inherited these settings with no way to opt out. That’s no longer the case.
You can now choose when to apply shared configuration. Use overrides to standardize settings across checks, or turn them off to manage check config individually. Groups can now act more like folders, giving you full flexibility.
UI users: You’ll now see checkboxes next to each override property in the group settings, letting you opt in or out as needed.
Monitoring as Code (MaC) users: The new CheckGroupV2
construct in CLI v6.0.0 enables the updated behavior. See the full release update for more information. Note: Support for Terraform and Pulumi is coming soon.
👉🏼 Learn more in Checkly Groups Update: Organize Checks Your Way.
Fully qualified account URLs: Links to the Checkly UI now include the account ID in the URL. This ensures that when switching between multiple accounts, you’ll no longer land on a 404 if you weren’t active in the target account. Instead, you’ll be taken straight to the correct resource. Existing links without account IDs will continue to work.
We’ve increased the list of IP addresses we use to run checks. The API endpoints are already updated with the new IPs, but if you manage manually an allowlist of Checkly IP ranges, make sure to include the new ones:
IPv4: 84.16.252.216, 84.16.252.217, 84.16.252.218, 84.16.252.219, 84.16.252.220, 84.16.252.221, 84.16.252.222, 84.16.252.223
IPv6: 2a00:c98:4007:20:1::/112, 2a00:c98:4007:21:1::/112, 2a00:c98:4007:22:3::/112
You can now configure whether check results on dashboards are clickable: This option is available under the “Look and feel” section in your dashboard settings. We’ve turned it off by default to prevent unwanted behavior and made it configurable for more control.
Retry API checks on network errors only: You can now configure API checks to retry only on network-level failures like timeouts, DNS issues, or connection resets. Learn more in the developer docs. Currently available in the UI only. CLI, Terraform, and Pulumi provider support is coming soon.
Got feedback? We’d love to hear from you!
You can share your feedback on our feedback hub or connect via the Checkly community Slack.
Happy monitoring!
June 17th, 2025
We’ve just released a new major version of the CLI (v6.0.0) with a number of exciting improvements. Here’s what’s new:
We’ve introduced a new construct called CheckGroupV2 (replacing the now-deprecated CheckGroup) that makes working with groups more flexible and intuitive.
In Checkly, groups help you organize checks together and apply shared configuration — like where checks run, how often they run, or how alerts are sent. Previously, certain group level settings (runParallel
, locations
, alertEscalationPolicy
, and retryStrategy
) were always enforced. Every check in a group automatically inherited the group’s values for these settings, with no way to opt out.
With CheckGroupV2, these settings are now optional. Groups can now act more like folders, with zero config shared.
👉 Read the change log on groups to learn more.
We’ve improved how the CLI processes Constructs behind the scenes. This comes with better error reporting (see multiple issues at once), faster CLI performance and more meaningful filtering (only bundles the checks you need).
⚠️ This change is backward-compatible, but there are a few edge cases to watch out for:
If you’ve created custom Constructs (e.g. by extending ours), you may need to update your implementation.
If your code accesses low-level or internal fields directly from constructs, those fields might now be moved to the bundled output.
If your code depends on construct errors being thrown right away (e.g. during new ApiCheck()), that’s changed — errors now show up later during processing.
Most users won’t be impacted, but custom tooling or advanced integrations may need updating. If you have any questions or would like to learn more, don’t hesitate to reach out to support.
The CLI now deduplicates shared files across checks. If multiple checks reference the same files, those files will only be uploaded once, reducing overall upload size. This change makes deployments more efficient and also allows far more checks to be deployed within the same project.
Update to the latest version with: npm install checkly@latest
.
Check out the CLI documentation or swing by the CLI repository for more details.
Questions or feedback? Join our Slack community or reach out to support. We’re here to help!
June 17th, 2025
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.
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.
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:
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
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.
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!
June 4th, 2025
Improved
We shipped some big new updates for our Checkly AI features to help you assess and triage any Playwright failures better and (much) quicker.
We’ve upgraded our model and added more data sources like network logs and your script code to get higher fidelity answers to the question: “Why did my Playwright-based check fail and who’s impacted?”
For each failure of a Playwright-based check you now get:
An upgraded End-user Impact Analysis that uses your company’s domain specific wording. More on that below.
A succinct summary of Test Steps to drastically cut down time finding out where your script failed.
A Root Cause to determine what caused the error, saving a lot of time scrolling through your code, traces, videos, screenshots and logs.
An Error Category classification to immediately point your nose in the right direction.
These upgrades are now live.
To make the end-user impact analysis as descriptive as possible, you can enrich any tags you use in Checkly in the Tag Description Editor. This data is then used as context by Checkly AI to give you more accurate descriptions that match your organization’s internal lingo.
You can access this editor under the AI settings tab.
By default, Checkly AI works with OpenAI GPT-4.1. To address data privacy concerns and general AI / data governance, you can now bring your own LLM from a preferred supplier. We have built-in support for Azure-hosted models and Google Gemini models.
This feature is available on request for Enterprise accounts. If your preferred model is not listed, we can add new models and providers on request.
If you’re an Enterprise customer, go to the Labs section and turn on “Checkly AI.” Then, opt in to the feature on the “AI” screen in account settings.
Want more info? Book a call with our co-founder Tim.
May 22nd, 2025
Converting your Checkly setup to code has been simplified with the new import
command. Starting with version 5.4.1
, the Checkly CLI now lets you import UI-created resources into your repository, making it easy to switch from a UI-driven workflow to a code-first workflow, powered by Monitoring as Code.
If you are managing your Checkly setup from the web UI today, and you want to migrate to a fully code-driven workflow, the new import
command is for you.
npx checkly import
automatically generates new code files for existing UI-created resources: checks, groups, alert channels, dashboards, status pages, all placed directly in your checks directory, as specified in your checkly.config.ts
file.
To import your existing Checkly resources to a new code-first setup, follow these steps:
Install the Checkly CLI and log in
If you haven’t installed the Checkly CLI yet, first do so and log in to your account:
npm i --save-dev checkly@latest
npx checkly login
You can find complete installation instructions here.
Start the import process
npx checkly import
Choose if you want to import all your UI-created resources in one go, or if you want to manually select the resources to import. The import process will automatically create a checkly.config.ts
file for you if you don’t already have one.
Review and finalize
Review the imported code before continuing. If you are importing a large number of resources, you can exit the import flow now to review and later return to where you left off with npx checkly import apply
and finalize the import by committing
your changes.
You are now ready to manage your Checkly setup directly from your repository, driven by a Monitoring as Code workflow! You are now ready to integrate Checkly in your CI/CD process, dynamically create monitors to always keep up with your product development, and much more.
Read more about how to use the CLI and how to import resources in our docs.
Happy monitoring!
Questions or feedback? Join our Slack community.
May 16th, 2025
Over the past month, we’ve been building …
Need to monitor an API with strict SLOs or high availability requirements? You can now run API checks every second—reach out to us to learn more or request access.
We just released Checkly’s first two AI-assisted features in beta!
First up is Playwright Impact Analysis. This feature generates a concise summary for every failing Playwright test focusing on end-user impact, answering questions like “Who is impacted?”, “Which features are broken?” and “What steps led to this failure?”
If your failed Playwright test has a trace file, you will find an Analyze with AI button that kicks off the analysis.
The second is the Explain Error button, displayed above every Playwright error message. Clicking this button uses AI to explain why a script failed and how to fix it with a snippet of example code and displays any best practices and links to helpful documentation, like the official Playwright docs.
Both features are now in beta and free for all users during this phase, as we’re testing them and gathering feedback. For more information on access, how it works, and how to provide feedback, please check our changelog entry.
We’ve been shipping fast — Traces, Status Pages, Dark mode, TCP checks… But our old sidebar was not keeping up with the pace. So we rebuilt it. The new layout is developer-first and introduces logical groupings and cleaner information architecture, making it faster for you to locate the different product sections, create new resources and configure your setup. It’s now ready to scale with everything we’re building (and that you’re monitoring with us!)
Our latest runtime 2025.04
is now generally available, and uses Playwright 1.51.1
and Node.js v22.11.0
.
A new release of the Checkly agent featuring this runtime has also been released; the version number is 6.0.0
. Checkly agent 6.0.0
comes with both runtime 2024.09
and 2025.04
making upgrading easier.
You can check out the full specs for the new runtime here, and learn more about Checkly runtimes and how to use private locations for your monitoring in our documentation.
Promote any playwright tests to synthetic monitors straight from your codebase. Use pwTags
and pwProjects
to pick the ones you care about. Drop in custom Frequency
and Locations
, and they’ll run globally as often as you need —no UI clicks, just code-driven monitoring in your checkly.config.ts
file. Includes:
Custom code dependencies, read directly from your package.json
file and cached between runs when there are no changes.
Multiple browsers and viewports support - Firefox, Webkit, Chromium, you name it.
Dependencies between tests or projects, if you use a shared login step, we’ve got you!
Support for npm, pnpm and yarn based repositories.
Give them a try, and happy monitoring!
The Analytics API (/v1/analytics/*
endpoints) now exposes retry data for each check. The following fields are included:
totalCheckRuns
– Total number of check runs within the selected time window
checkRunsWithRetries
– Number of check runs that included at least one retry
checksWithRetriesPercentage
– Percentage of check runs with retries, relative to the total check runs
Several code editors in the app (e.g. for configuring a webhook alert channel) are now resizable: You can drag the corner to expand the editor and get more space when working with larger code snippets.
OS-based DNS resolution for TCP checks in private locations: We released a new version of the Checkly agent (v5.0.0.) that introduces the USE_OS_DNS_RESOLVER
environment variable. When When set to true
, TCP checks will resolve DNS using getaddrinfo
C function, instead of using the network. This enables easier DNS resolution for internal services e.g. services running in the same Kubernetes cluster.
Alert notifications are sent correctly on check degradations: Until recently we sent alert notifications as soon as a check degraded, even if the alert configuration was set to notify only after 2 or more failures. Degraded notifications now respect the check alert configuration correctly.
Private location failover logic updated: If a private location becomes unavailable, assigned checks will no longer fall back to a public location. Instead, they’ll be paused to avoid false alerts. We’re also exploring improvements to increase visibility into private location failures and give users more control over fallback behavior.
Got feedback? We’d love to hear from you!
You can share your feedback on our feedback hub or connect via the Checkly community Slack.
Happy monitoring!
May 16th, 2025
New
We just released Checkly’s first two AI-assisted features in beta!
First up is Playwright Impact Analysis. This feature generates a concise summary for every failing Playwright test focusing on end-user impact and aims to answer questions like “who is impacted?”, “which features are broken?” and “what steps led to this failure?”.
If your failed Playwright test has a trace file, you will find an Analyze with AI button that kicks off the analysis.
The second is the Explain Error button, displayed above every Playwright error message. Clicking this button uses AI to explain why a script failed, how to fix it with a snipper of example code and displays any best practices and links to helpful documentation, like the official Playwright docs.
Both features are now in beta and free for all users during this phase.
If you’re an Enterprise customer, go to the Labs section and turn on “Checkly AI.” Then, opt in to the feature on the “AI” screen in account settings.
Under the hood, we are using OpenAI GPT-4.1 but we can enable custom providers like Azure and Google Gemini for Enterprise users.
Book a call with our co-founder Tim, who can help you set it up and answer all your questions.
May 14th, 2025
Improved
We’ve rolled out a major redesign of the sidebar to support Checkly’s growth and make navigation faster, smarter, and more intuitive.
Checkly has grown a lot since our first sidebar design, and we keep growing faster and faster. With this growth came increased complexity that made the previous sidebar difficult to work with - navigation was not as intuitive as it could be, the component took up too much space when expanded, and it was difficult to use when collapsed.
To accommodate these challenges, we needed a navigation system that could scale, without overwhelming you.
This new version:
Introduces structure by grouping features into Detect, Communicate, and Resolve, making them easier to discover and remember.
Reduces cognitive load with a cleaner layout and shows the entire menu on hover when collapsed. This minimizes distractions when you’re in focus mode, while making navigation easy when you need it.
Streamlines resource creation with direct access to ‘Create’ actions per category.
We hope this redesign will make your work more efficient and fun!
Happy monitoring!
Questions or feedback? Join our Slack community.
May 9th, 2025
New
Checkly Agent
We have released major version 6.0.0
of the Checkly agent to support runtimes 2024.09
and 2025.04
on private locations.
This release also includes several bug fixes and smaller improvements, and we recommend upgrading to use the latest runtime and agent to get the best Checkly experience possible.
Detailed changes:
New: Support for runtimes 2024.09
and 2025.04
. For the full runtime specifications, see our docs
Fix: Remove runtime requirement for TCP checks
Fix: Added restrictions on the worker user to improve security
Fix: Change write location for test files to fix Error: ENOENT: no such file or directory
issue.
Read all about updating the agent here.
Happy monitoring!
Questions or feedback? Join our Slack community.
April 30th, 2025
New
Our latest runtime 2025.04
is now generally available to all Checkly users.
The new runtime uses Playwright 1.51.1
and Node.js v22.11.0
.
A new release of the Checkly agent featuring this runtime is also available; the version number is 5.0.0
.
Libraries included in the runtime have also been updated, including:
@azure/identity
from 4.4.1
to 4.9.1
@azure/keyvault-secrets
from 4.8.0
to 4.9.0
@clerk/testing
from 1.3.0
to 1.4.0
@faker-js/faker
from 9.0.1
to 9.7.0
@kubernetes/client-node
from 0.22.0
to 1.1.2
nice-grpc
from 2.1.9
to 2.1.12
and more
You can check out the full specs for the new runtime here, and learn more about Checkly runtimes and how to use private locations for your monitoring in our documentation.
There is a known bug with browser and multistep checks, where a check failure will cause one additional error message to be generated.
This only impacts already failing checks and will not cause disruptions or false alerts, but you might see an error message similar to this in your check failure reports:
Error: ENOENT: no such file or directory, open '/check/e2859f5a-a3c9-4349-bdd8-efe4d9c9a02a/script.js’
This error can be safely ignored when troubleshooting.
Happy monitoring!
Questions or feedback? Join our Slack community.