Bypass Google CAPTCHA using an automatic and fast reCAPTCHA solver.
The API documentation contains examples of requests and responses. For the convenience of using the service, we have published libraries on GitHub for programming languages: Python, Java, C#, C++, Javascript, Ruby, PHP, and Ruby. We have also developed code examples for automatically solving reCAPTCHAs using tools like Selenium and Puppeteer.
Supported:","browser_extension":{"logo_alt":"«Chrome Web Store» logo","text":"The Chrome browser extension allows you to skip reCAPTCHAs directly in the browser. This extension automates the process of solving reCAPTCHA, making it easier and faster for users to bypass these verifications."}},"ai_solver":{"img_alt":"AI","title":"AI captcha solver","description":"Most captchas tasks are solved automatically by AI models for speed. If AI confidence is low, the task is passed to verified human workers — combining speed with high accuracy.","cards":{"ai_first":{"title":"AI-first","text":"Most captchas tasks are solved automatically by AI models, which makes processing fast and scalable."},"human_fallback":{"title":"Human fallback for hard cases","text":"If AI cannot solve a task with enough confidence, it is routed to human workers."}}},"captcha_bypass_extension":{"title":"Captcha bypass extension","text":"This plugins allows you to automatically solve CAPTCHAs found on any webpage","img_alt":"{{site_name}} browser extension","browsers":{"chrome":{"img_alt":"«Chrome Web Store» logo","text":"Chrome captcha bypass extension","action":"Add to Chrome"},"firefox":{"img_alt":"«Mozilla Firefox Add-ons» logo","text":"Firefox captcha bypass extension","action":"Add to Firefox"},"edge":{"img_alt":"«Microsoft Edge Add-ons» logo","text":"Edge captcha bypass extension","action":"Add to Edge"},"opera":{"img_alt":"«Opera Add-ons» logo","text":"Opera captcha bypass extension","action":"Coming soon"}}},"software_integration":{"title":"Integration with software","text":"Use the API key to bypass captcha in software. The service is integrated into 4500+ software. To start, just enter the key in your software.","action":"See all software"},"selenium_and_puppeteer":{"title":"Handling captcha during automated testing","text":"APIs can integrate with captcha solving service to automate CAPTCHA bypass during browser automation tasks. This includes handling reCAPTCHA and other CAPTCHA types in tools like Selenium, Puppeteer, Playwright, Cypress, Selenide, Beautiful Soup, Appium, Postman, Nightwatch, WebdriverIO, Cheerio, TestCafe, Spawn, Protractor, and Scrapy."},"a11y":{"title":"Accessibility","img_alt":"Improving accessibility with {{site_name}}","text":"Captchas often present accessibility challenges for users with disabilities, such as visual impairments or cognitive difficulties. Captcha solver help automate the process of solving captchas by leveraging techniques like machine learning, and human-bases solutions.","action":"Accessibility and captcha"},"supported_captchas":{"title":"Supported captchas","text":"We’ve made it easy to integrate our products into your system, offering a quick and easy start to your web project with support for multiple programming languages and ready-to-use code examples.","item":{"logo_alt":"«{{captcha_name}}» logo"},"actions":{"show_more":"Show more"}}},"meta":{"description":"Fastest online captcha solving service starting at just {{price}} for 1,000 captchas. Service supports APIs including PHP, Python, C++, JAVA, C#, and JavaScript, ensuring seamless integration with your applications. Efficient, reliable, and cost-effective, captcha solver is created to fulfill any requirements. Try it and streamline your online operations with ease!","keywords":"CAPTCHA recognition, CAPTCHA solving, solve CAPTCHAs, CAPTCHA API, Anticaptcha, OCR online","title":"Captcha Solver: reCAPTCHA solver and captcha solving service. Bypass captchas using the best auto captcha solver online API - {{site_name}}"}},"landing":{"hero":{"actions":{"quick_start":"Quick Start","pricing":"Pricing"}},"page_navigation":{"actions":{"show":"Show page navigation","hide":"Hide page navigation"}},"alternative_extensions":{"title":"Alternative extensions","h_captcha":{"text":"hCaptcha Solver Extension","icon_alt":"hCaptcha logo"},"recaptcha":{"text":"reCAPTCHA Solver Extension","icon_alt":"reCAPTCHA logo"}},"captcha_bypass_table":{"actions":{"more":"More"},"text":["{{site_name}} is the market leader in {{captcha_name}} bypass services.","No risk: pay only for automatically solved captchas.","The captcha recognition service is fully automated.","The bypass process is as follows: using the API, the customer passes a set of necessary parameters from the captcha placement page to the service, where the employee solves it. After that, the customer requests a set of parameters that must be passed to the appropriate fields to solve the captcha on the page."],"headings":{"captcha_name":"Captcha name","price":"Price per 1000","solving_speed":"Solving speed","api":"How to bypass"},"rows":{"captcha_name":"{{captcha_name}}","solving_speed":"{{solving_speed}}s"}},"api_clients":{"logo_alt":"We support API for «{{lang}}» language"},"github":{"logo_alt":"Logo of «GitHub»","content":{"title":"GitHub Repositories: SDKs and code examples","text":"Full documentation and {{captcha_name}} bypass code examples on GitHub"},"fallback_content":{"title":"Captcha bypass solution on GitHub","text":"Full documentation and captcha bypass code examples on GitHub"}},"security_standards":{"logo_alt":"«{{standard}}» logo"},"captcha_bypass_extension":{"link":"Add to browser","supported_browsers_alt":"Captcha Bypass Extension supported in Chrome and Firefox browsers","text":"This plugins allows you to automatically solve and bypass captchas found on any webpage.","content":{"extension_demo_alt":"Captcha solver browser extensions","title":"Captcha solver browser extensions"},"fallback_content":{"extension_demo_alt":"Captcha bypass extension","title":"Captcha bypass extension"}},"selenium_and_puppeteer":{"img_alt":"Bypass captcha using Selenium/Puppeteer with {{site_name}} service","selenium":{"title":"Selenium","text":"Captcha bypassing for Selenium:","links":{"landing":"Selenium captcha solver","article":"Manual: How to solve reCAPTCHA in Selenium"}},"puppeteer":{"title":"Puppeteer","text":"Automate captcha bypass in Puppeteer:","links":{"landing":"Puppeteer captcha solver","article":"Manual: How to solve reCAPTCHA in Puppeteer"}}},"bounding_box":{"title":"Data labeling","text":"Bounding box annotation and object detection for AI/ML companies that require model training:","links":{"landing":"Bounding box annotation service","blog":"API requests example","dataset_annotation":"Dataset annotation","satellite_image_annotation":"Satellite image annotation","image_annotation":"Image annotation"},"links_alt":{"dataset_annotation":"Dataset annotation using «{{site_name}}»","satellite_image_annotation":"Satellite image annotation using «{{site_name}}»","image_annotation":"Image annotation using «{{site_name}}»"},"img_alt":"Bounding box object detection service"},"proxy_navigation":{"items":{"proxy_service":"{{site_name}} proxy","residential_proxies":"Residential proxies","premium_proxies":"Premium proxies","datacenter_proxies":"Datacenter proxies","isp_proxies":"ISP proxies","mobile_proxies":"Mobile proxies","socks5_proxies":"SOCKS5 proxies","https_proxies":"HTTPS/HTTP proxies","rotating_proxies":"Rotating proxies","elite_proxies":"Elite proxies","anonymous_proxies":"Anonymous proxies"},"additional_items":{"actions":{"show":"Show additional items","hide":"Hide additional items"}},"logo_alt":"«{{proxy_type}}» logo"},"local_proxy_navigation":{"items":{"local_proxies":"Local proxies","us_proxies":"American proxies","ca_proxies":"Canadian proxies","mx_proxies":"Mexican proxies","br_proxies":"Brazilian proxies","de_proxies":"German proxies","fr_proxies":"French Proxies","ru_proxies":"Russian proxies","uk_proxies":"British proxies","es_proxies":"Spanish proxies","pt_proxies":"Portuguese proxies"},"additional_items":{"actions":{"show":"Show additional items","hide":"Hide additional items"}},"logo_alt":"«{{proxy_type}}» logo"},"proxy_reviews":{"title":"The best customer experience provided by leading proxy service provider","items":{"g2":"«G2» rating - 4.5 out of 5 stars","sourceforge":"«SourceForge» rating - 4.5 out of 5 stars","captchathecat":"«Captchathecat» rating - 9.8 out of 10 stars"}},"proxy_getting_started":{"title":"How to get started","img_alt":"How to get started using {{site_name}} proxy service","items":{"sign_up":"Register on the website","select_traffic_amount":"Select the required amount of traffic","generate_proxy_settings":"Open the generator and set the connection settings: GEO, protocol","get_auth_data":"Get authorization data to get started","connect_to_proxy":"Connect to the proxy server"}},"proxy_price":{"title":"Residential proxy price","info":"Proxy plans is directly linked to the volume of gigabytes you purchase. The more gigabytes you procure, the greater the discount you unlock! It's that simple. Unlock discounts with bulk proxy purchases!","features":{"rotating":"Flexible rotation options","api_access":"API access","socks5_supported":"SOCKS5 supported","unlimited_traffic":"Unlimited traffic"},"price":"Price","discount":"Discount {{amount}}%","action":"Buy residential proxy","supported_payment_methods":{"label":"We accept these payment methods:","alt":"We support Visa, Mastercard, Airtm, PayPal, Alipay, BTC, USDT payment methods"}},"proxy_plans":{"title":"Purchase of residential proxy plans","item":{"popular":"Popular Plan","discount":"{{amount}}% Off","price":"Price per 1GB","action":"Order now"}},"proxy_locations":{"title":"Rotated and static resident proxies worldwide","text":"Real residential IPs worldwide. Wide proxy pool covers locations across the world. The network of rotated (dynamic) and static (sticky) resident proxies covers more than 220 countries and the set of IP addresses exceeds the mark of 90 million. Access information you need, no matter the location.","action":"Explore residential proxy locations","sections":{"asia":"Asia","europe":"Europe","africa":"Africa","oceania":"Oceania","north_america":"North America","south_america":"South America","top":"Top city and state IPs"}},"proxy_code_examples":{"title":"Code examples","text":"Effortlessly incorporate proxy into your projects. We ensure a seamless integration of our products into your infrastructure, making the process as effortless as possible. With support for multiple languages and readily available code examples, a swift and uncomplicated start to your web project is guaranteed."},"proxy_faq":{"title":"FAQ","sections":{"general_questions":{"title":"General questions","items":{"config_generation":{"title":"How do I generate a proxy configuration?","text":"
Go to the configurator block on the Proxy page.
Choose the type from:
State (Province) - City - targeting by State and City
ISP - targeting by Internet Service Provider
Choose the Geo-position setting:
Global Mix - Geo is picked randomly
Europe Mix - Geo is picked randomly in Europe
Asia Mix - Geo is picked randomly in Asia
City Mix - City is picked randomly
Set the \"IP duration\" setting based on your needs. It states for how long will the proxy be valid from 0 (every new requests goes via a new IP address) to 120 minutes. We recommend to set 3 minutes.
Press Generate button and check the actual proxy configuration. "},"change_ip":{"title":"How can I change the IP address manually?","text":"You can change the setting of the proxy (Geo settings for example) or you can set the IP duration to 0 so the IP is changed every time you use it."},"ip_duration":{"title":"\"IP duration (0 - 120 Min)\" does this mean that after 2 hours (120 Min) the proxies will stop working? If yes, is there a way to change it?","text":"No, there is no way to keep the session for longer than 120 minutes"},"protocols":{"title":"How is the data encrypted when passing through your residential proxies? Are there any specific encryption protocols you use?","text":"We are utilizing those protocols: HTTP, HTTPS and SOCKS5. We don't use any more protocols."},"trial":{"title":"How can I test before I buy?","text":"Unfortunately, we can't provide a trial or free traffic for a proxy."},"threads_count":{"title":"What is the maximum threads your proxy could handle?","text":"We don't limit the number of threads you use."},"blocked_sites":{"title":"Do you somehow limit traffic? Any blocked sites may be?","text":"You will not be able to use proxy with paypal.com and web.telegram.org"},"available_countries":{"title":"Where is your service available?","text":"Worldwide, except China."},"due_date":{"title":"Is there any due date for the purchased traffic?","text":"Yes, you should use prepaid traffic within 3 months."}}},"sessions":{"title":"Sessions","items":{"ip_changing":{"title":"How is IP changing: strictly on time or sometimes when there are no requests?","text":"The IP-address is changed strictly according to the time set in the settings, unless something unpredictable happens (user turned off the PC, disconnection, etc.)."},"session_end":{"title":"Will the sessions be interrupted when the IP address changes?","text":"When the IP address duration is over, the new IP address is instantly assigned."},"ip_duration":{"title":"How can I change the IP from time to time?","text":"Use IP duration for setting the time of proxy work."},"proxy_list":{"title":"How can I generate a bulk proxy list?","text":"You can use 'Generate proxy list' function to get a list of proxy with unique IP addresses."},"proxy_list_settings":{"title":"Will I have guaranteed unique IP addresses using your 'Generate proxy list' function?","text":"The nature of residential proxy doesn't allow us to check all of it at the moment you requested the list because it's dynamic in nature. This depends on the geo-settings of your proxy list. If you try to get, say, 1000 IP out of the city with 100 devices, obviously we will not be able to provide that amount of devices online, so please keep that in mind when you set up the geolocation."}}},"tariffs":{"title":"Tariffs","items":{"traffic_calculations":{"title":"How is traffic counted: separately or incoming plus outgoing?","text":"Traffic is calculated as the sum of incoming and outgoing traffic. We are aware that some services claim that they count only outgoing, but we tested it and have serious doubts about that being so."},"account_lockout":{"title":"Could you block my account for anything?","text":"Please be aware that we have the right to disable an account if we receive a complaint from our payment processor."}}},"logging_and_tracking":{"title":"Logging & Tracking","items":{"data_logging":{"title":"What is your policy regarding data logging? How is it stored and protected?","text":"We don't log anything."},"traffic_tracking":{"title":"Do you somehow track the traffic or websites visited via proxy? Do you disclose this personal information to someone?","text":"No, we don't track anything, and we have no KYC, so it's safe to say we have zero information about customers. So we can't disclose any information about customers, as we store none of it."}}}}},"proxy_use_cases":{"title":"Use cases","items":{"testing":{"title":"Testing","text":"Integrate with emulators for application testing or automation seamlessly."},"scraping":{"title":"Scraping","text":"Scraping data from apps and platforms. Hide scraping activities from target applications, sites."},"review_monitoring":{"title":"Review monitoring"},"ad_verification":{"title":"Ad verification"},"cybersecurity":{"title":"Cybersecurity"},"data_collection":{"title":"Travel fare aggregation"}}},"proxy_promo":{"title":"Buy our proxies","items":{"parse_sites":"Access any website and extract the data you need","simulate_user_behavior":"Avoid website blocks by acting like a regular user","bypass_restrictions":"Bypass GEO restricted content and access localized data","speed_up_your_work":"Enjoy faster speeds with one hop connectivity"},"action":"Quick start"},"proxy_hero":{"main_advantages":{"countries":"220+ Countries","residential_ips":"90M+ Residential IPs","uptime":"99,9% Uptime","response_time":"~0,7 Response time"}},"data_annotation_navigation":{"items":{"data_labeling":"Data labeling","bounding_box":"Bounding box","dataset_annotation":"Dataset annotation","satellite_image_annotation":"Satellite image annotation","image_annotation":"Image annotation"}},"contact_sales":{"text":"Scale up your business with {{site_name}}","action":"Contact sales","form":{"alerts":{"success":"Your message has been successfully sent. We will contact you shortly."},"title":"Contact form","field_names":{"firstName":"First name","lastName":"Last name","email":"Email","phone":"Phone","message":"Message"},"field_labels":{"firstName":"First name","lastName":"Last name","email":"Email","phone":"Phone","message":"Message"},"field_placeholders":{"firstName":"First name","lastName":"Last name","email":"Work email","phone":"Phone number","message":"Can you share more about your business needs and challenges?"},"agreement":"By clicking \"Contact sales\", I agree to the Terms of Service and Privacy Policy","actions":{"submit":"Send"}},"contact_support":{"text":"Contact sales","action":"Send message"}},"profile_contacts":{"title":"Please provide an alternative communication channel","desc":"For urgent contact only — never used for ads.","select":"Select","submit":"Save","contact":"Contact","facebook_ph":"Profile or ID","imessage_ph":"Email or phone number","whatsapp_ph":"Phone number","wechat_ph":"WeChat ID","line_ph":"LINE ID or phone","kakaotalk_ph":"KakaoTalk ID","telegram_ph":"@username or phone","zalo_ph":"Phone number","vkmessenger_ph":"Profile or ID","viber_ph":"Phone number","signal_ph":"Phone number","alerts":{"success":{"title":"Contacts saved","text":"Your contacts were saved. You can view or edit them in your profile settings.","action":"Profile settings"}}}}}};
window.initialLanguage = 'en';
window.initialHostname = '2captcha.com';
window.userAcceptLanguageHeader = 'undefined';
Implement Java library for fast captcha verification bypass. Simple API for captcha solve.
Java package for easy integration with the API of 2Captcha captcha solving service to bypass reCAPTCHA, Arkose captcha, Geetest and solve any other captchas
URL of your web-sever that receives the captcha recognition result. The URL should be first registered in pingback settings of your account
defaultTimeout
120
Polling timeout in seconds for all captcha types except reCAPTCHA. Defines how long the SDK tries to get the answer from res.php API endpoint
recaptchaTimeout
600
Polling timeout for reCAPTCHA in seconds. Defines how long the SDK tries to get the answer from res.php API endpoint
pollingInterval
10
Interval in seconds between requests to res.php API endpoint, setting values less than 5 seconds is not recommended
IMPORTANT: once callback is defined for TwoCaptcha instance, all methods return only the captcha ID and DO NOT poll the API to get the result. The result will be sent to the callback URL. To get the answer manually use getResult method
Solve captcha
When you submit any image-based captcha use can provide additional options to help 2Captcha workers to solve it properly
Capy captcha = new Capy();
captcha.setSiteKey("PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v");
captcha.setUrl("https://www.mysite.com/captcha/");
captcha.setProxy("HTTPS", "login:password@IP_address:PORT");
Grid method is originally called Old reCAPTCHA V2 method. The method can be used to bypass any type of captcha where you can apply a grid on image and need to click specific grid boxes. Returns numbers of boxes.
Grid captcha = new Grid();
captcha.setFile("path/to/captcha.jpg");
captcha.setRows(3);
captcha.setCols(3);
captcha.setPreviousId(0);
captcha.setCanSkip(false);
captcha.setLang("en");
captcha.setHintImg(new File("path/to/hint.jpg"));
captcha.setHintText("Select all images with an Orange");
Canvas method can be used when you need to draw a line around an object on image. Returns a set of points' coordinates to draw a polygon.
Canvas captcha = new Canvas();
captcha.setFile("path/to/captcha.jpg");
captcha.setPreviousId(0);
captcha.setCanSkip(false);
captcha.setLang("en");
captcha.setHintImg(new File("path/to/hint.jpg"));
captcha.setHintText("Draw around apple");
ClickCaptcha method returns coordinates of points on captcha image. Can be used if you need to click on particular points on the image.
Coordinates captcha = new Coordinates();
captcha.setFile("path/to/captcha.jpg");
captcha.setLang("en");
captcha.setHintImg(new File("path/to/hint.jpg"));
captcha.setHintText("Select all images with an Orange");
This method can be used to solve a captcha that asks to rotate an object. Mostly used to bypass FunCaptcha. Returns the rotation angle.
Rotate captcha = new Rotate();
captcha.setFile("path/to/captcha.jpg");
captcha.setAngle(40);
captcha.setLang("en");
captcha.setHintImg(new File("path/to/hint.jpg"));
captcha.setHintText("Put the images in the correct way up");
Other methods
Additional valid methods used during the work of the main scripts
send / getResult
These methods can be used for manual captcha submission and answer polling.
Possible variants of standard errors returned by the service when processing requests
If case of an error captcha solver throws an exception. It's important to properly handle these cases. We recommend to use try/catch to handle exceptions.
try {
solver.solve(captcha);
} catch (ValidationException e) {
// invalid parameters passed
} catch (NetworkException e) {
// network error occurred
} catch (ApiException e) {
// api respond with error
} catch (TimeoutException e) {
// captcha is not solved so far
}