Laravel
← Back to all checks

Performance

Performance

Watches the response times measured by the uptime check and alerts you when your site is consistently over budget or suddenly much slower than usual, with a breakdown showing which phase is slow.

How it works

This check sends no requests of its own. Every 15 minutes, it looks at the response times the Uptime check recorded and asks four questions:

  1. Is the site over budget? The average of the recent responses is compared with your budget.
  2. Did it suddenly slow down? The recent average is compared with the 2 hours before. A jump by the slowdown ratio means something changed, even if you are still within budget.
  3. Are there spikes? The 95th percentile catches intermittent slow responses that a good average hides.
  4. Which phase is slow? Each phase is averaged separately: DNS lookup, TCP connect, TLS handshake, server response (time to first byte) and download.

A problem is only reported once several evaluations in a row agree (2 by default), so one slow window never alerts you.

Settings

Change these on the Settings tab of the uptime report, under Performance notifications.

Setting Default What it does
Budget ms 3500 Fail when the average response time is over this.
Slowdown ratio 1.5 Warn when the site is suddenly this many times slower than the 2 hours before.
TTFB ms 800 Warn when the server takes longer than this to send its first byte.
Slow checks 2 How many evaluations in a row must agree before we report a problem.

DNS resolution over 300 ms and TLS handshakes over 500 ms also warn.

Statuses

Status Meaning
OK Response times are within budget and stable.
Warning A sudden slowdown, spikes over the budget, or a slow server response, DNS lookup or TLS handshake.
Failed The average response time is over your budget.

By default you are notified of warnings and failures. Performance notifications can be snoozed together with uptime from the Snooze tab.

Fixing common problems

  • Slow server response (TTFB): the application itself is slow. Profile your slowest pages, add database indexes, cache expensive work, and check that the server is not short of CPU or memory.
  • Slow DNS: use a fast DNS provider with nameservers close to your visitors.
  • Slow TLS handshake: enable TLS 1.3 and session resumption, and make sure the server sends a short certificate chain.
  • Sudden slowdown after a deploy: compare the deploy time with the response time chart, then roll back or profile the change.