Frequently Asked Questions

General

What is Healthchecks.io?

Healthchecks.io is a service for monitoring regularly running tasks such as cron jobs. It uses the Dead man's switch technique: the monitored system must "check in" with Healthchecks.io at regular, configurable time intervals. As soon as Healthchecks.io sees a missed check-in, it sends you an alert.

This method of monitoring is also known as "heartbeat monitoring": the monitored system sends regular heartbeat signals. Healthchecks.io monitors the heartbeats and notifies you when they don't arrive on schedule.

How reliable is Healthchecks.io?

Healthchecks.io runs on Hetzner bare metal servers, with healthy excess capacity to handle traffic spikes (which cron jobs with common schedules are prone to create).

Our app servers are load-balanced, and unhealthy servers are excluded from load balancing automatically.

Our load balancer servers are monitored, and unhealthy load balancers are removed from DNS rotation automatically.

Our PostgreSQL database has a hot standby, as well as daily encrypted backups to AWS S3. The database fail-over is handled manually. The ops team consists of a single person, so multi-hour or even multi-day outages are possible.

In cases of service disruptions, we post status updates to:

Who runs Healthchecks.io?

Healthchecks.io is a product of SIA Monkey See Monkey Do, currently a one-man software and consulting company. The one man is Pēteris Caune, a long time Python developer from Valmiera, Latvia. Mastodon, GitHub.

Does Healthchecks.io offer discounts for nonprofits or open-source projects?

Yes! We offer the Business plan free of charge for nonprofits and open-source projects. Please contact us to get set up.

Can I self-host this service?

Yes! The Healthchecks.io code base is BSD licensed and is developed in the open on GitHub. Self-hosting is a good option if you need to extend the project with proprietary features, if you must run everything in-house for compliance reasons, or if you want to learn about developing and deploying Django web applications. Please note that maintaining a production-grade monitoring service is not a fire-and-forget task, and in many cases, the hosted option will be more reliable and cost-effective.

Should I use Healthchecks.io or Cronitor?

It depends :-). To help you decide, we have prepared a Healthchecks.io vs Cronitor comparison table.

Authentication

What authentication mechanisms does Healthchecks.io support?

Healthchecks.io supports signing in via one-time email link (you enter your email address in the sign-in form, you receive a link in email, you click the link which signs you in) and traditional sign-in with email and and password.

You can optionally secure your Healthchecks.io account with two factor authentication. Healthchecks.io supports:

  • WebAuthn security keys (you can register multiple keys).
  • TOTP (time-based codes, supported by Google Authenticator, Aegis, 2FAS, etc.).

I have lost my password, how can I reset it?

If you have lost or forgotten your password, please do the following:

  • Go to the Sign-In page
  • Use the "Email Me a Link" method to sign in. You will receive a one-time sign-in link in your email.
  • Once in your account, go to Account SettingsSet Password to set a new password.

Please contact us at contact@healthchecks.io in case you need assistance!

Can I change the email address of my Healthchecks.io account?

Yes, you can change the account owner's email address: go to Account SettingsEmail and Password. Note that the "new" email address must be available (i.e., have no registered Healthchecks.io account yet).

Accounts and Billing

What is the ordering process? Can we pay via bank transfer?

The ordering on Healthchecks.io is fully self-service – after register for an account on Healthchecks.io, navigate to Account Settings › Billing, select a plan, and enter your payment details. Your payment method will get charged, and a recurring subscription will be set up. Every time your payment method is charged you will receive a PDF invoice in email.

We do not accept payments via bank transfer. We currently accept Visa, Master Card, American Express, and PayPal.

Can I use multiple accounts on Healthchecks.io?

Please do not use multiple accounts to get around the limits of the Hobbyist and Supporter plans. This will be considered abuse. You will be asked to reduce the number of checks or to upgrade to a plan with a higher check limit. In case of no action, eventually, your accounts will be deleted.

Special cases:

  • You can use multiple accounts for organizational purposes (for example, to keep staging and production environments as separated as possible) as long as the total number of checks across your accounts stays below your billing plan's limit. For example, you can have two Hobbyist accounts with 10 checks in each.
  • You can have separate accounts for separate legal entities with separate limits. For example, you can have a Hobbyist account with 20 checks for monitoring your personal stuff and another Hobbyist account with 20 checks for monitoring your company infrastructure. Likewise, if you are employed by two companies, you can create a separate account for each company and use it to its full limit. However, suppose two employees from the same company create Hobbyist accounts for work use. In that case, the total number of checks among their accounts should not exceed 20 since both accounts are ultimately used for the benefit of a single legal entity (the employing company).

If you are looking to consolidate multiple accounts into one, Healthchecks.io has tools to help you:

What happens if my payment method expires?

Healthchecks.io will retry charging your payment method and send weekly notifications to the account owner's email address about the billing problem. If your subscription remains past due for more than 60 days, Healthchecks.io will cancel your subscription and switch your billing plan to Hobbyist.

If an account is on the Hobbyist plan but exceeds the Hobbyist plan's limits, Healthchecks.io will send weekly emails to the account's owner asking to either reduce the number of checks in the account or upgrade to a paid plan. In case of no action, eventually, Healthchecks.io will delete the account.

To avoid billing-related disruption to the service:

  • Make sure your account is always set up with a valid payment method.
  • Make sure the account owner's email address is working and is being monitored.

Using Healthchecks.io

Why am I receiving alerts a few hours before/after the scheduled time?

Look up what timezone your server is using. Make sure that your checks on Healthchecks.io are configured with the same timezone.

If you have recently changed the server's timezone, but have not restarted the cron daemon afterward, it might still be using the old timezone. Restart the cron daemon.

Also, check if your server's clock shows correct and accurate time.

If a check is down, I want to keep getting notified until it goes back up. Is this possible?

The Healthchecks.io alerts are "one-shot". However, some integrations can be configured to re-send or escalate alerts until you acknowledge them. If you are integrating Healthchecks with an incident management system (PagerDuty, VictorOps, OpsGenie, PagerTree), check the available settings there. If you are using the Pushover integration, you can configure it to use the "Emergency" priority. Pushover repeats emergency notifications every 5 minutes until they are acknowledged.

Healthchecks also has optional periodic email reminders. In Account SettingsEmail Reports, you can choose to receive daily or hourly email reminders as long as there are any checks down. Healthchecks.io will send these notifications for all projects you have access to: the projects you own and the projects you have been invited to.

Requests to hc-ping.com are intermittently failing with 5xx errors or timeouts. What should I do?

If you notice reliability issues or unexpected HTTP status codes from the ping endpoints, please report the issue to us. Include as much of the below diagnostic information as is feasible:

  • Details about the issue you are seeing: any error messages, how frequently it is happening, whether you can reproduce the issue from different machines.
  • Details about the affected host: its IP address, whether it is behind any firewalls, the ISP or cloud provider used.
  • The output of curl -vvv {your-ping-url}.

Can I send notifications to more than one person?

You can add set up multiple email addresses to receive notifications in the Integrations page. For example, you can add the email address of your ticketing system, so a new ticket gets created when a check goes down.

You can also invite your team members to your projects in SettingsTeam Access. In addition to receiving notifications, invited team members will be able to access your account, see the list of checks, inspect ping logs, set up additional notification methods etc. They will not be able to access your account's billing settings.

Is there a complete and up-to-date list of ping endpoint (hc-ping.com) IP addresses?

Yes, we publish the current IP addresses as plain text files here:

https://healthchecks.io/ipv4.txt

https://healthchecks.io/ipv6.txt

Note: these are the IP addresses that the hc-ping.com domain can resolve to when clients make HTTP requests to ping endpoints. Healthchecks.io uses a different set of IP addresses for making outbound HTTP requests (for example, when using webhook integrations). These IP addresses are currently not published.

What is the difference between hchk.io and hc-ping.com in ping URLs?

hc-ping.com and hchk.io are the hostnames we use for ping URLs. Healthchecks.io originally used the hchk.io hostname only. In June 2018, due to .io TLD stability concerns, we registered hc-ping.com and started to use it in the website UI, in the pinging examples, in the documentation, etc.

From functional perspective, the hc-ping.com and hchk.io hostnames are interchangeable. You can replace "hchk.io" with "hc-ping.com" in any ping URL and it will work the same.

hc-ping.com is the preferred hostname for ping URLs, but the hchk.io-based URLs still work and can be used. If the usage of the hchk.io hostname drops to a very low level, we may decide to decommission this domain. In that case, we will notify any affected users at least one year in advance.

Security

Do you have a bug bounty program?

We do not have an official bug bounty program, but will be very grateful if you report any discovered security issues to contact@healthchecks.io.

Can you share any formal Penetration Test Reports?

We have not performed any formal penetration tests.

What are your data encryption practices for data at rest and in transit?

  • Data is encrypted in transit from clients to servers (HTTPS), and between servers (Wireguard).
  • Data is not encrypted at rest on the database servers. Our databases run on Hetzner's bare-metal servers, Hetzner is ISO 27001 certified hosting provider.
  • Database backups are encrypted with gpg.

Where is data stored, and how it aligns with applicable data protection laws?

We process and store data on Hetzner servers located in Germany.

SIA Monkey See Monkey Do, the company running Healthchecks.io, is registered in Latvia. GDPR applies to us.

Do you have compliance certifications or attestations, such as ISO 27001 or SOC 2?

We have no compliance certifications or attestations.

What are your policies and procedures for handling data breaches?

See our Data Breach Policy here.

Do you offer Service Level Agreements (SLAs)?

We do not offer to sign SLAs.