The connection to the origin web server was made, but the origin web server timed out before responding. The likely cause is an overloaded background task, database or application, stressing the resources on your web server. To resolve, please work with your hosting provider or web development team to free up resources for your database or overloaded application.

A 524 error states that Cloudflare was able to make a TCP connection to the origin, but the origin did not reply with a HTTP response before the connection timed out.

Our edge will typically wait for a HTTP response from your server for 100 seconds.

If no response is sent by your server in that time, we close the connection and serve a 524 error page.

This error is commonly caused by a long-running process on the origin server, such as a PHP application or a database query which the web server must wait on before responding to a request.

A 524 can also be caused by your origin server being overloaded- if you see this error it’s a good idea to check your server’s available resources, including CPU and RAM, and overall traffic levels. If your server has a high CPU load, or is low on memory, this could indicate a resource problem.

If you’re unsure about the health of your server it’s a good idea to contact your hosting provider and ask them to investigate.

If you regularly run HTTP requests that take over 100 seconds to complete (for example large data exports), one alternative is to move those long-running processes to a subdomain that is not proxied by Cloudflare. That subdomain would have the orange cloud icon toggled to grey in the Cloudflare DNS Settings. Note that you cannot use a Page Rule to avoid a 524 error.

Railgun Users: A 524 can also manifest if the time specified by lan.timeout is exceeded. This defaults to 30 seconds, so if you’re seeing 524 errors with your Railgun enabled, we recommend setting this value higher. 

Advanced users: Logging response time at your web server.

If you have access to change your web server configuration files, you can actually log how long your server took to respond to a request by modifying the log format.

Most web servers store the response time as a variable, which means you simply need to add this to your log configuration file.

Apache declares logging format in the LogFormat or CustomLog directives, depending on whether you are changing this globally, or for specific virtualhosts.

Response time is stored as the %T variable. Please see the mod_log_config documentation here:

  • Question of

    Are you seeing the same thing?

    • Yes
    • No
  • Question of

    Are you getting frustrated?

    • Yes
    • No
  • Question of

    Do you think this needs to be fixed?

    • Yes
    • No


What do you think?


Written by Ghostwriter

Poll MakerStory MakerQuiz MakerImage MakerEmbed MakerUp/Down VoterEmoji AddictGallery MakerList MakerVerified UserContent AuthorYears Of Membership

Leave a Reply