ScreenshotNeo

BlogHow-to

How to Fix CloudConvert Conversion Errors for Pages with Cloudflare

Find the failed CloudConvert task first, then trace URL imports, 403 responses, and Cloudflare 522 or 524 errors to the right fix.

By the ScreenshotNeo team4 October 20267 min read

To fix a CloudConvert error on a page behind Cloudflare, first identify which CloudConvert task failed. If the failed task is import/url, check whether CloudConvert can retrieve the intended source file and whether Cloudflare or the origin is returning a challenge, denial, or error. A conversion-task failure points to a different problem; an export-task failure points to delivery of the converted result.

A Cloudflare-protected web page is not necessarily a directly downloadable file. CloudConvert documents URL imports and extra request headers, but that does not establish that every browser challenge can be passed by its importer. Diagnose the actual response before changing security settings. [CloudConvert import documentation; Cloudflare]

1. Find the failing task

CloudConvert jobs consist of tasks. A job can import an input, convert it, and export the result. Inspect the failed job and record the task operation, status, error code and message, and input URL. URL imports use the import/url operation. This distinction prevents you from troubleshooting Cloudflare when the failure is actually a format conversion or export issue. See the CloudConvert API documentation.

Failed stage What to investigate first
Import Source accessibility, redirects, authorization, Cloudflare challenge or denial, and whether the response is the intended file.
Convert Whether the imported input is valid and supported for the requested conversion; inspect the task error.
Export Whether the result could be delivered to the configured destination; inspect the export task error and destination setup.

2. Check what the URL returns

Test the exact source URL from an unauthenticated remote request if that reflects CloudConvert’s access. Confirm that it returns the intended file, rather than an HTML challenge, access-denied page, login redirect, or unrelated redirect. If the source requires authorization, CloudConvert documents additional request headers for URL imports. Use only credentials and access paths you are authorized to use.

If the URL is a protected web page rather than a direct file URL, a successful browser visit does not prove that a server-side importer can access it. Browser challenges, session-bound access, or rules requiring a human interaction can prevent a URL importer from receiving the file. The source documentation does not establish that CloudConvert can solve a Cloudflare browser challenge. If you administer the site, inspect Cloudflare security events and the applicable challenge, WAF, and access rules. If you do not, ask the site owner for an authorized way to provide the file.

CloudConvert also documents other import methods. Choose one appropriate to your access and workflow. Its import documentation cautions against base64 imports for files larger than 10 MB.

3. Diagnose the HTTP status

403 Forbidden

First inspect the response body and branding. Cloudflare says an unbranded 403 is returned directly by the origin web server; a Cloudflare-branded 403 may be caused by Cloudflare security features. A 403 alone does not identify the responsible layer.

  • If you administer the Cloudflare zone: inspect security events and the matching WAF, challenge, or access rule. Verify that the intended request is allowed under your site’s security policy.
  • If the response is unbranded: investigate origin permissions, application access controls, and IP-deny rules.
  • If you do not administer the site: provide the owner the URL, response code, response body or screenshot of the error, and timestamp. Ask for an authorized access route.

Do not disable protections broadly just to make a conversion work. Identify the specific rule and request first. See Cloudflare’s Error 403 guidance, challenge troubleshooting, and WAF troubleshooting.

522 Connection timed out

Cloudflare defines 522 as a connection timeout between Cloudflare and the origin. If you control the origin, check that it is online and not overloaded, that the configured origin IP is current, and that origin firewalls allow Cloudflare IP ranges. Check intermediary network controls as well. See Cloudflare’s Error 522 documentation.

524 A timeout occurred

Cloudflare defines 524 as a connection that succeeded but did not receive a timely response from the origin. Investigate slow or overloaded origin work. For large HTTP processes, Cloudflare suggests using status polling. Check application and origin timing before changing conversion settings. See Cloudflare’s Error 524 documentation.

Other responses

Use the actual status and response body rather than assuming every failed import is a Cloudflare block. A redirect to login, an HTML challenge page, a missing file, an authorization error, or a server failure each calls for a different remedy. Preserve the response evidence and identify which task received it.

4. Apply the fix that matches the failure

  1. Import rejected by access controls: if you own the site, review the specific event and rule, then configure an authorized access path consistent with your security requirements. If you do not own it, request access or an alternative file delivery method.
  2. Import receives a challenge or HTML instead of a file: provide the source through an import method supported by CloudConvert and permitted by the site owner. Do not treat a browser-visible page as proof that a server-side URL fetch will receive the same content.
  3. Import needs authorization: use CloudConvert’s documented additional request headers where suitable, and handle credentials securely. Do not put secrets in public source code or logs.
  4. 522: restore connectivity from Cloudflare to the origin; check firewall allow rules, origin health/load, and origin IP configuration.
  5. 524: reduce or move long-running origin work, investigate slow requests, and consider the documented status-polling approach for large HTTP processes.
  6. Conversion or export task failed: use that task’s own error details to investigate the input format, conversion request, or destination. A Cloudflare URL-import diagnosis will not explain every downstream failure.

5. What to send when escalating

For a useful report to the site owner, CloudConvert support, or your infrastructure team, include:

  • CloudConvert job and failed task operation, status, error code, and message.
  • The source URL and the time of the attempt, including timezone.
  • The HTTP status and response body or relevant headers, if available.
  • Whether the response is Cloudflare-branded and whether you administer the zone or origin.
  • For 5xx responses, relevant origin and intermediary load balancer, cache, proxy, and firewall logs.

Cloudflare notes that a 5xx cause may not appear in origin logs alone, so check intervening systems too. See its 5xx troubleshooting guidance.

Or skip the browser setup

If your actual goal is to capture a clean screenshot or PDF of a page, ScreenshotNeo is a website screenshot API and MCP server from Yorker Media. It is an alternative to try first when you need a rendered page capture; it does not repair a CloudConvert import or guarantee access to every protected page. One GET request returns an image or PDF. See the ScreenshotNeo documentation.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://your-site.example/page -o shot.webp
import requests

r = requests.get(
    "https://api.screenshotneo.com/v1/shot",
    params={"access_key": "YOUR_API_KEY", "url": "https://your-site.example/page"},
    timeout=90,
)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({
  access_key: 'YOUR_API_KEY',
  url: 'https://your-site.example/page'
});
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
if (!res.ok) throw new Error(`Screenshot request failed: ${res.status}`);
await Bun.write('shot.webp', res);

ScreenshotNeo removes known cookie and consent banners, newsletter popups, and chat widgets before capture. Bot checks, blank pages, failed loads, timeouts, and cache hits are not billed; response headers report the page verdict and billing status. Its MCP server provides take_screenshot, get_page_info, and capture_pdf for Claude, Cursor, and other MCP clients. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 screenshots. Sign up for 1,000 free screenshots a month, with no card required.

Performance, reliability, and cost

Retries are useful only when the cause is transient. Repeating a 403 caused by an unchanged access rule or a 524 caused by consistently slow origin work is unlikely to solve it. Record attempt times and task responses so you can distinguish a transient failure from a persistent one. For a 522, check connectivity and origin load; for a 524, investigate response time. Do not infer CloudConvert or Cloudflare reliability from a single incident.

CloudConvert’s documentation supports URL imports, headers, and alternate import approaches, but the supplied sources do not establish a universal workaround for protected pages, a conversion price for this particular job, or a success-rate benchmark. Check the service’s applicable plan and job details for cost. Avoid retry loops that create unnecessary jobs; fix access or origin behavior first.

Common errors and fixes

Symptom Likely area Next action
URL import fails Source access, redirect, authentication, or challenge Inspect the import task and response; confirm the URL returns the intended file.
403 with Cloudflare branding Cloudflare security feature or rule Zone owner checks security events, WAF, challenge, and access rules.
403 without Cloudflare branding Origin server or application Check origin permissions and deny rules; Cloudflare says this response comes directly from origin.
522 Cloudflare to origin connection Check origin health, current IP, and firewall allowance for Cloudflare IP ranges.
524 Origin responds too slowly Investigate long-running or overloaded work; consider status polling for large processes.
Conversion task fails Input or conversion request Read the conversion task error; do not assume the import or Cloudflare is at fault.
Export task fails Output delivery Inspect the export task and configured destination.

FAQ

Can CloudConvert convert a URL protected by Cloudflare?

It depends on what the URL returns to the importer and what access the site requires. CloudConvert documents URL imports and request headers; the available sources do not establish that it can solve browser challenges. Inspect the failed import response.

Does every 403 mean Cloudflare blocked the job?

No. Cloudflare says an unbranded 403 comes directly from the origin. A branded 403 may involve Cloudflare security features.

Should I allowlist a converter’s IP address?

Only if you administer the site and have verified the request and the appropriate supported access method. The provided documentation does not specify a CloudConvert IP range to allowlist.

Can ScreenshotNeo fix the failed CloudConvert job?

No. It is a separate screenshot and PDF capture service. Consider it when your desired output is a page capture, and verify that the target page is accessible for the capture request.