How to Solve Cloudflare Turnstile and Challenge in 2024

Sora Fujimoto
AI Solutions Architect
15-May-2024

Approximately 20% of the websites that require scraping employ Cloudflare, a robust anti-bot protection system that can easily block your access. With technologies that stand out in the mainstream, cloudflare could be a force to be reckoned with in 2026. Dealing with this can be quite frustrating, right?
But fret not! We'll be in for exploring effective ways to solve Cloudflare in 2026, so you don't have to go through all that hassle again. In fact, what you're reading right now is the most comprehensive guide on the subject!
Bonus Code
Here's a special bonus code for top CAPTCHA solutions: CapSolver: WEBS. Redeem this code and enjoy an additional 5% bonus with each recharge, without any limits!

Understanding Cloudflare Turnstile
Cloudflare Turnstile is a free tool designed to replace traditional CAPTCHAs. By integrating a simple code snippet, Turnstile allows website visitors to enjoy a seamless browsing experience without the interruptions of CAPTCHA challenges. It effectively prevents misuse and confirms the legitimacy of visitors while maintaining data privacy and eliminating the negative user experience often associated with CAPTCHAs. With Turnstile, websites can provide users with a more smooth and pleasant interaction.
Turnstiles Types Supported by CapSolver
Introducing CapSolver - The Premier Automated CAPTCHA Solver:
CapSolver stands out as the top automated CAPTCHA solver, offering exceptional capabilities in CAPTCHA resolution. Leveraging advanced automation methods and a strong infrastructure, CapSolver delivers precise and efficient CAPTCHA solving, making it the best solution for handling Turnstile and other CAPTCHA challenges in 6 and beyond.

The Turnstile/Challenge verification code is a new attempt to replace reCaptcha. CapSolver automatically supports all its subtypes:
- Manual
- Non-Interactive
- Invisible
How to solve cloudflare turnstile
Next we'll cover then solving Cloudflare Turnstile by means of a token. In the beginning, there is no need to specify subtypes during your call. It is not necessary to provide your own custom User-Agent yet,
Lets ignore this parameter.
The task type type is as follows
AntiTurnstileTaskProxyLess
Step 1 Create the task
Create the task with the createTask.
In the process of using turnstile, we must input websiteURL and websiteKey, other parameters are optional.
Task Object Structure
| Properties | Type | Required | Description |
|---|---|---|---|
| type | String | Required | AntiTurnstileTaskProxyLess |
| websiteURL | String | Required | The address of the target page. |
| websiteKey | String | Required | Turnstile website key. |
| metadata | Map<String,String> | Required | Turnstile extra data . Turnstile Documentation |
| metadata.acton | String | Optional | The value of the data-action attribute of the Turnstile element if it exists. |
| metadata.cdata | String | Optional | The value of the data-cdata attribute of the Turnstile element if it exists. |
Example Request
txt
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
json lines
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "AntiTurnstileTaskProxyLess",
"websiteURL": "https://www.yourwebsite.com",
"websiteKey": "0x4XXXXXXXXXXXXXXXXX",
"metadata": {
"action": "login", //optional
"cdata": "0000-1111-2222-3333-example-cdata" //optional
}
}
}
Example Response
json lines
{
"errorId": 0,
"status": "idle",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006" // record taskId
}
Step 2 Getting Result
Use the getTaskResult method to get the recognition results
Depending on the system load, you will get the results within the interval of 1s to 20s
Example Request
txt
POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json
json lines
{
"clientKey": "YOUR_API_KEY",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}
Example Response
json lines
{
"errorId": 0,
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006",
"status": "ready",
"errorCode": null,
"errorDescription": null,
"solution": {
"token": "0.mF74FV8wEufAWOdvOak_xFaVy3lqIDel7SwNhw3GgpICSWwTjYfrQB8mRT1dAJJBEoP7N1sESdp6WH9cTS1T0catWLecG3ayNcjwxVtr3hWfS-dmcBGRTx4xYwI64sAVboYGpIyuDBeMIRC3W8dK35v1nDism9xa595Da5VlXKM7hk7pIXg69lodfiftasIkyD_KUGkxBwxvrmz7dBo10-Y5zvro9hD4QKRjOx7DYj9sumnkyYCDx0m4ImDIIkNswfVTWI2V22wlnpHdvMgdtKYgOIIAU28y9gtdrdDkpkH0GHcDyd15sxQGd9VjwhGZA_mpusUKMsEoGgst2rJ3zA.UWfZupqLlGvlATkPo3wdaw.38d55cd0163610d8ce8c42fcff7b62d8981495cc1afacbb2f14e5a23682a4e13",
"type": "turnstile",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36"
}
}
Use SDK Request
::: code-group
python
# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'
import capsolver
# capsolver.api_key = "..."
solution = capsolver.solve({
"type": "AntiTurnstileTaskProxyLess",
"websiteURL": "https://www.yourwebsite.com",
"websiteKey": "0x4XXXXXXXXXXXXXXXXX",
"metadata": {
"action": "login" # optional
}
})
-
go
package main
import (
"fmt"
capsolver_go "github.com/capsolver/capsolver-go"
"log"
)
func main() {
// first you need to install sdk
//go get github.com/capsolver/capsolver-go
capSolver := capsolver_go.CapSolver{ApiKey: "..."}
solution, err := capSolver.Solve(map[string]any{
"type": "AntiTurnstileTaskProxyLess",
"websiteURL": "https://www.yourwebsite.com",
"websiteKey": "0x4XXXXXXXXXXXXXXXXX",
"metadata": map[string]string{
"action": "login" // optional
},
})
if err != nil {
log.Fatal(err)
return
}
fmt.Println(solution)
}
Understanding Cloudflare Chanllenge 5S
It uses the same underlying technology as Turnstile. It helps website owners to embed non-intrusive Cloudflare challenges on their websites to effectively prevent bot attacks. Also Cloudflare Challenge 5s introduces a brief 5-second delay before granting access to a website. Its purpose is to deter automated bots by requiring users to wait for a short period.
Chanlleges types Supported by CapSolver
There is no need to specify subtypes during your call. It is not necessary to provide your own custom User-Agent yet,
we will ignore this parameter.
![][image_ref_a6kb1cxb]
The task type type is as follows
AntiCloudflareTaskProxy required
How to Solve Cloudflare Challenge
Firstly, as with Turnstile, we use CapSolver to create the task, (the steps are largely the same)
Step 1 Create Task
Create the task with the createTask.
In the process of using challenge, we must input websiteURL,proxy other parameters are optional.
Task Object Structure
| Properties | Type | Required | Description |
|---|---|---|---|
| type | String | Required | AntiCloudflareTask |
| websiteURL | String | Required | The address of the target page. |
| proxy | String | Required | Learn using proxies |
Example request
txt
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
json lines
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "AntiCloudflareTask",
"websiteURL": "https://www.yourwebsite.com",
"proxy": "158.120.100.23:334:user:pass"
}
}
Example Response
json lines
{
"errorId": 0,
"status": "idle",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006" // record taskId
}
Step 2 Getting Result
Use the getTaskResult method to get the recognition results
Depending on the system load, you will get the results within the interval of 1s to 20s
Example Request
txt
POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json
json lines
{
"clientKey": "YOUR_API_KEY",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}
Example Response
json lines
{
"errorId": 0,
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006",
"status": "ready",
"solution": {
"cookies": {
"cf_clearance": "..."
},
"proxy": "...",
"token": "...",
"type": "challenge",
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}
}
Use SDK Request
::: code-group
python
# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'
import capsolver
# capsolver.api_key = "..."
solution = capsolver.solve({
"type": "AntiCloudflareTask",
"websiteURL": "https://www.yourwebsite.com",
"proxy": "158.120.100.23:334:user:pass"
})
-
go
package main
import (
"fmt"
capsolver_go "github.com/capsolver/capsolver-go"
"log"
)
func main() {
// first you need to install sdk
//go get github.com/capsolver/capsolver-go
capSolver := capsolver_go.CapSolver{ApiKey: "..."}
solution, err := capSolver.Solve(map[string]any{
"type": "AntiCloudflareTask",
"websiteURL": "https://www.yourwebsite.com",
"proxy": "158.120.100.23:334:user:pass"
})
if err != nil {
log.Fatal(err)
return
}
fmt.Println(solution)
}
Conclusion
In 2026, CapSolver stands out as the optimal solution for managing Cloudflare's Turnstile and Challenge 5s, two prominent security mechanisms. CapSolver excels as a top automated CAPTCHA solver, offering superior CAPTCHA resolution capabilities. Utilizing advanced automation technology and a strong infrastructure, CapSolver effectively and accurately solves CAPTCHAs, making it the perfect choice for addressing Turnstile and other CAPTCHA challenges in 2026 and beyond.
Compliance Disclaimer: The information provided on this blog is for informational purposes only. CapSolver is committed to compliance with all applicable laws and regulations. The use of the CapSolver network for illegal, fraudulent, or abusive activities is strictly prohibited and will be investigated. Our captcha-solving solutions enhance user experience while ensuring 100% compliance in helping solve captcha difficulties during public data crawling. We encourage responsible use of our services. For more information, please visit our Terms of Service and Privacy Policy.
More

How to Automate Cloudflare Challenge Solving in Selenium
Master the definitive strategy for Cloudflare Challenge Solving in Selenium. Use Undetected-Chromedriver, behavioral mimicry, and CapSolver's API for reliable web automation

Ethan Collins
03-Dec-2025

How to Solve Cloudflare Challenge with Node.js
A look at why Cloudflare blocks Node.js scrapers and how developers reliably get cf_clearance for data workflows.

Ethan Collins
03-Dec-2025

Top Cloudflare Challenge Solvers in 2026: Performance Rankings
Discover the Top Cloudflare Challenge Solvers in 2026. We compare CapSolver's superior speed and 99%+ success rate against 5 smaller competitors. Learn why CapSolver is the best choice for web automation.

Aloísio Vítor
11-Nov-2025

How to Solve Cloudflare Captcha with Python & Selenium
Struggling with Cloudflare Captcha? Learn how to tackle it using Python and Selenium! This guide breaks down what Cloudflare Captcha is and offers effective solutions for web scraping in 2024.

Rajinder Singh
10-Nov-2025

How to Solve Cloudflare in 2026: The 6 Best Methods for Uninterrupted Automation
Discover the 6 best methods to solve the Cloudflare Challenge 5s in 2026 for web scraping and automation. Includes detailed strategies, code examples, and a deep dive into the AI-powered CapSolver solution

Ethan Collins
29-Oct-2025

How to Solve the Cloudflare 5s Challenge: A Technical Guide for Web Scraping
Learn how to solve the Cloudflare 5-second challenge using advanced CAPTCHA solver APIs. A step-by-step guide for developers on overcoming Cloudflare JavaScript and Managed Challenges with CapSolver for stable web scraping automation.

Anh Tuan
28-Oct-2025

