dnsServerhourglass_bottomTimeoutdnsDNSsecurityfirewallerrorcURL error 28labelCommonwarningModerate

cURL error 28: Operation timed out after 5001 milliseconds with 2050 out of 2766 bytes received

The request stops after five seconds and only part of the response arrives. WordPress triggers the error when it tries to reach an external URL via its HTTP functions.

Root causes include a low timeout setting, firewall or security plugin blocking outbound traffic, slow DNS resolution, remote server latency, outdated cURL or OpenSSL libraries, and plugins that modify request parameters. Loopback requests fail for the same reasons.

Symptoms

[dashicons-warning]
Site Health shows REST API error
Dashboard displays cURL error 28 message in Site Health screen
[dashicons-admin-plugins]
Plugin and theme updates fail
Automatic updates stop and show connection timed out notices
[dashicons-email]
SMTP emails not sent
Mail sending plugins report cURL error 28 with byte counts

Common Causes

Outbound request blocked by firewall
Security layer stops HTTP request before remote server can answer
Low PHP/cURL timeout limit
Timeout value set to five seconds cuts off larger responses
DNS resolution delay
Mis‑configured or slow DNS lookup prevents quick connection to target IP
Remote server latency
External API or SMTP server responds slowly or is overloaded
Outdated cURL/OpenSSL libraries
Old versions mishandle TLS handshakes and cause premature timeouts
Need this fixed right now?

Don't waste your day debugging. Our experts can Fix your issues in under 2 hours.*

Success Rate

100% Guaranteed

Starting from

$35 /hour
99+

Trusted by Business Owners

“I spent 3 days trying to fix the Elementor loading loop. These guys fixed it in 20 minutes. Lifesavers!”

— Sarah J., Web Designer

Related Issues

contact_mail
Contact Form 7: REST API request failed: 503 Service Unavailable
A 503 Service Unavailable response stops Contact Form 7 from sending data...
apiREST APIerror503descriptioncontact-form-7
contact_mail
Contact Form 7: REST API request failed: 429 Too Many Requests

The form tries to send data through the WordPress REST API. The...

apiREST APIerrorerrorsecurityfirewalldescriptioncontact-form-7settingsserver_configuration
contact_mail
Contact Form 7: REST API request failed: 401 Unauthorized

The form tries to send data via the WordPress REST API. The...

apiREST APIadmin_panel_settingspermissionsdescriptioncontact-form-7lock401
contact_mail
Contact Form 7: File upload error: temporary directory missing

The error appears when Contact Form 7 cannot locate a writable temporary...

codePHPcloud_offupload erroradmin_panel_settingspermissionsdescriptiontemporary filedescriptioncontact-form-7
contact_mail
Contact Form 7: Mail (2) sending failed: PHP mail() function disabled

Contact Form 7 reports a failure for Mail (2) when the PHP...

codePHPerrorerrordescriptioncontact-form-7mailMailsettingsserver_configuration
contact_mail
Contact Form 7: Mail (2) sending failed: SSL certificate verification failed

Contact Form 7 reports a failure when trying to send the secondary...

errorerrorlocksslcodecURLdescriptioncontact-form-7