dnsServercodePHPhourglass_bottomTimeoutcodecURLerrorcURL error 28labelCommonwarningModerate

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

WordPress uses the PHP cURL library to request external resources. The request stops when the server does not respond within the configured timeout. The error message shows the timeout limit and the amount of data received before the stop.

The timeout is often set to five seconds on shared hosts. When the remote server needs more time, the connection ends early and WordPress reports the error.

Symptoms

[dashicons-warning]
Admin notice in Site Health
Dashboard shows a cURL error 28 warning in the REST API section.
[dashicons-admin-plugins]
Plugin update fails
WordPress is unable to download plugin files and stops the update process.
[dashicons-email]
Emails not sent
WP Mail SMTP logs display the same timeout error for outgoing mail.
[dashicons-admin-site]
External API calls break
Payment gateway or analytics integrations are unable to retrieve data.

Common Causes

Low server timeout limit
Host sets the HTTP request timeout to five seconds, which is insufficient for many APIs.
Firewall blocks outbound cURL
Security plugins or server firewalls reject external connections, causing the request to hang.
Outdated PHP or cURL libraries
Old versions are unable to negotiate TLS properly, leading to early termination.
DNS resolution delay
Slow name resolution prevents the request from reaching the remote host in time.
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