← Back to Index

500 Internal Server Error

FigureThe sequence of a 500 error. The client sends a valid request, but the server fails internally (e.g., DB error) and returns the generic 500 status.

What is a 500 Error?

A 500 error is the server saying, "I'm broken, but I won't tell you why." It is a catch-all error for unexpected server-side issues. Unlike a 404 (where the client asked for the wrong thing), a 500 means the client request was valid, but the server failed to process it.

Why it Matters for SEO

1. The "Death" of Rankings

If Googlebot encounters a 500 error, it will try again later. If the error persists for hours or days, Google will drop the page from the index entirely. It assumes the site is dead and doesn't want to send users to a broken page.

2. Crawl Budget Waste

If your site throws many 500 errors, Googlebot will slow down its crawling significantly to avoid "hurting" your server further. This means your new content won't get indexed.

Common Causes

  • PHP/Code Errors: A syntax error in your backend code (WordPress plugins, custom scripts).
  • Corrupt .htaccess: A typo in your server configuration file.
  • Database Connection Issues: The website cannot talk to the database.
  • Resource Limits: The server ran out of memory (RAM) or PHP execution time.

How to Fix

  1. Check Server Logs: Since the 500 error is generic, the real error is hidden in your server's error.log.
  2. Turn on Debugging: In WordPress, enable WP_DEBUG. In other frameworks, verify your environment isn't suppressing errors.
  3. Revert Recent Changes: If you just installed a plugin or deployed code, undo it immediately.

How to Audit with Mygom

Mygom flags any page returning a 5xx status code as a Critical Error. These must be fixed before any other SEO work is done.