{"api":"Web scraping","apiRows":{"Employee profile":3201,"Cached employee profile":1338,"Employee email":2634,"Cached employee email":1143,"Email validation":4287,"Cached email validation":735,"Employee phone":844,"Cached employee phone":519,"Company profile":1202,"Cached company profile":275,"Company headcount":287,"Cached company headcount":200,"Phone validation":1034,"Cached phone validation":332,"Post comments":481,"Cached post comments":4,"Post reactions":411,"Cached post reactions":4,"Employee lookalikes":169,"Cached employee lookalikes":67,"Company lookalikes":571,"Cached company lookalikes":202,"Company technologies":176,"Cached company technologies":325,"Company job count":67,"Employee posts":493,"Cached employee posts":17,"Company posts":476,"Cached company posts":13,"Company funding":141,"Cached company funding":177,"Company jobs":316,"Cached company jobs":94,"Employee search":1218,"Cached employee search":314,"Company search":495,"Cached company search":242,"Job search":502,"Cached job search":49,"Reverse email lookup":424,"Cached reverse email lookup":507,"Post search":357,"Cached post search":49,"Post details":533,"Cached post details":22,"Job details":470,"Cached job details":14,"Employee comments":240,"Cached employee comments":17,"Employee reactions":203,"Cached employee reactions":7,"Post reposts":120,"Employee recommendations":96,"Job lookalikes":51,"Employee articles":47,"Company enrichment":1014,"Cached company enrichment":1341,"People search":568,"Cached people search":1407,"Company discovery":562,"Cached company discovery":1427,"Job postings":312,"Cached job postings":257,"Job posting details":237,"Cached job posting details":90,"Person enrichment":119,"Cached person enrichment":207,"Leadership changes":48,"Cached leadership changes":83,"Company hierarchy":83,"Cached company hierarchy":71,"Web search":734,"Cached web search":104,"SERP":5168,"Cached SERP":35,"Web scraping":1014,"X profile":9,"X posts":9,"Instagram profile":9,"Instagram posts":9,"TikTok profile":9,"TikTok videos":9,"YouTube channel":9,"YouTube channel videos":9,"Cached web scraping":127},"treeCounts":{"Employee profile":{"best":98,"top":3},"Cached employee profile":{"best":69,"top":3},"Employee email":{"best":119,"top":3},"Cached employee email":{"best":51,"top":3},"Email validation":{"best":178,"top":3},"Cached email validation":{"best":35,"top":3},"Employee phone":{"best":61,"top":3},"Cached employee phone":{"best":32,"top":3},"Company profile":{"best":76,"top":3},"Cached company profile":{"best":17,"top":3},"Company headcount":{"best":18,"top":3},"Cached company headcount":{"best":10,"top":3},"Phone validation":{"best":50,"top":3},"Cached phone validation":{"best":24,"top":3},"Post comments":{"best":33,"top":3},"Cached post comments":{"best":1,"top":1},"Post reactions":{"best":27,"top":3},"Cached post reactions":{"best":1,"top":1},"Employee lookalikes":{"best":9,"top":3},"Cached employee lookalikes":{"best":8,"top":3},"Company lookalikes":{"best":27,"top":3},"Cached company lookalikes":{"best":14,"top":3},"Company technologies":{"best":25,"top":3},"Cached company technologies":{"best":25,"top":3},"Company job count":{"best":7,"top":3},"Employee posts":{"best":40,"top":3},"Cached employee posts":{"best":3,"top":3},"Company posts":{"best":42,"top":3},"Cached company posts":{"best":2,"top":2},"Company funding":{"best":17,"top":3},"Cached company funding":{"best":17,"top":3},"Company jobs":{"best":34,"top":3},"Cached company jobs":{"best":10,"top":3},"Employee search":{"best":37,"top":3},"Cached employee search":{"best":17,"top":3},"Company search":{"best":21,"top":3},"Cached company search":{"best":14,"top":3},"Job search":{"best":37,"top":3},"Cached job search":{"best":5,"top":3},"Reverse email lookup":{"best":29,"top":3},"Cached reverse email lookup":{"best":31,"top":3},"Post search":{"best":33,"top":3},"Cached post search":{"best":3,"top":3},"Post details":{"best":46,"top":3},"Cached post details":{"best":2,"top":2},"Job details":{"best":40,"top":3},"Cached job details":{"best":1,"top":1},"Employee comments":{"best":20,"top":3},"Cached employee comments":{"best":3,"top":3},"Employee reactions":{"best":15,"top":3},"Cached employee reactions":{"best":2,"top":2},"Post reposts":{"best":9,"top":3},"Employee recommendations":{"best":8,"top":3},"Job lookalikes":{"best":5,"top":3},"Employee articles":{"best":5,"top":3},"Company enrichment":{"best":71,"top":3},"Cached company enrichment":{"best":76,"top":3},"People search":{"best":56,"top":3},"Cached people search":{"best":61,"top":3},"Company discovery":{"best":57,"top":3},"Cached company discovery":{"best":78,"top":3},"Job postings":{"best":18,"top":3},"Cached job postings":{"best":25,"top":3},"Job posting details":{"best":22,"top":3},"Cached job posting details":{"best":10,"top":3},"Person enrichment":{"best":16,"top":3},"Cached person enrichment":{"best":18,"top":3},"Leadership changes":{"best":5,"top":3},"Cached leadership changes":{"best":6,"top":3},"Company hierarchy":{"best":8,"top":3},"Cached company hierarchy":{"best":10,"top":3},"Web search":{"best":60,"top":3},"Cached web search":{"best":8,"top":3},"SERP":{"best":78,"top":3},"Cached SERP":{"best":3,"top":3},"Web scraping":{"best":27,"top":3},"X profile":{"best":2,"top":2},"X posts":{"best":2,"top":2},"Instagram profile":{"best":2,"top":2},"Instagram posts":{"best":2,"top":2},"TikTok profile":{"best":2,"top":2},"TikTok videos":{"best":2,"top":2},"YouTube channel":{"best":2,"top":2},"YouTube channel videos":{"best":2,"top":2},"Cached web scraping":{"best":4,"top":3}},"bestPages":{"Employee profile":["/best-linkedin-profile-api","Best LinkedIn profile API in 2026"],"Cached employee profile":["/best-cached-linkedin-profile-api","Best cached LinkedIn profile API in 2026"],"Employee email":["/best-email-finder-api","Best email finder API in 2026"],"Cached employee email":["/best-cached-email-finder-api","Best cached email finder API in 2026"],"Email validation":["/best-email-verification-api","Best email verification API in 2026"],"Cached email validation":["/best-cached-email-verification-api","Best cached email verification API in 2026"],"Employee phone":["/best-phone-finder-api","Best phone finder API in 2026"],"Cached employee phone":["/best-cached-phone-finder-api","Best cached phone finder API in 2026"],"Company profile":["/best-linkedin-company-data-api","Best LinkedIn company data API in 2026"],"Cached company profile":["/best-cached-linkedin-company-data-api","Best cached LinkedIn company data API in 2026"],"Company headcount":["/best-company-headcount-api","Best company headcount API in 2026"],"Cached company headcount":["/best-cached-company-headcount-api","Best cached company headcount API in 2026"],"Phone validation":["/best-phone-validation-api","Best phone validation API in 2026"],"Post comments":["/best-linkedin-post-comment-api","Best LinkedIn post comment API in 2026"],"Post reactions":["/best-linkedin-post-reaction-api","Best LinkedIn post reaction API in 2026"],"Company lookalikes":["/best-similar-companies-api","Best similar companies API in 2026"],"Cached company lookalikes":["/best-cached-similar-companies-api","Best cached similar companies API in 2026"],"Company technologies":["/best-tech-stack-api","Best tech stack API in 2026"],"Cached company technologies":["/best-cached-tech-stack-api","Best cached tech stack API in 2026"],"Employee posts":["/best-linkedin-profile-post-api","Best LinkedIn profile post API in 2026"],"Company posts":["/best-linkedin-company-post-api","Best LinkedIn company post API in 2026"],"Cached company funding":["/best-company-funding-api","Best company funding API in 2026"],"Company jobs":["/best-company-open-jobs-api","Best company open jobs API in 2026"],"Cached company jobs":["/best-cached-company-open-jobs-api","Best cached company open jobs API in 2026"],"Employee search":["/best-linkedin-people-search-api","Best LinkedIn people search API in 2026"],"Cached employee search":["/best-cached-linkedin-people-search-api","Best cached LinkedIn people search API in 2026"],"Company search":["/best-linkedin-company-search-api","Best LinkedIn company search API in 2026"],"Cached company search":["/best-cached-linkedin-company-search-api","Best cached LinkedIn company search API in 2026"],"Job search":["/best-linkedin-job-search-api","Best LinkedIn job search API in 2026"],"Cached job search":["/best-cached-linkedin-job-search-api","Best cached LinkedIn job search API in 2026"],"Reverse email lookup":["/best-reverse-email-lookup-api","Best reverse email lookup API in 2026"],"Cached reverse email lookup":["/best-cached-reverse-email-lookup-api","Best cached reverse email lookup API in 2026"],"Post search":["/best-linkedin-post-search-api","Best LinkedIn post search API in 2026"],"Post details":["/best-linkedin-post-details-api","Best LinkedIn post details API in 2026"],"Job details":["/best-linkedin-job-details-api","Best LinkedIn job details API in 2026"],"Employee comments":["/best-linkedin-profile-comment-api","Best LinkedIn profile comment API in 2026"],"Employee reactions":["/best-linkedin-profile-reaction-api","Best LinkedIn profile reaction API in 2026"],"Post reposts":["/best-linkedin-post-repost-api","Best LinkedIn post repost API in 2026"],"Company enrichment":["/best-company-enrichment-api","Best company enrichment API in 2026"],"Cached company enrichment":["/best-cached-company-enrichment-api","Best cached company enrichment API in 2026"],"Cached people search":["/best-people-search-api","Best people search API in 2026"],"Cached company discovery":["/best-company-discovery-api","Best company discovery API in 2026"],"Cached job postings":["/best-job-postings-api","Best job postings API in 2026"],"Job posting details":["/best-job-posting-details-api","Best job posting details API in 2026"],"Cached job posting details":["/best-cached-job-posting-details-api","Best cached job posting details API in 2026"],"Cached person enrichment":["/best-people-enrichment-api","Best people enrichment API in 2026"],"Cached company hierarchy":["/best-company-hierarchy-api","Best cached company hierarchy API in 2026"],"Web search":["/best-web-search-api","Best web search API in 2026"],"Cached web search":["/best-cached-web-search-api","Best cached web search API in 2026"],"SERP":["/best-serp-api","Best SERP API in 2026"],"Web scraping":["/best-web-scraping-api","Best web scraping API in 2026"]},"three":{"words":"web scraping","plans":[["ScraperAPI","/web-scraping-apis/scraperapi/free-plan-get-sync-api#475-monthly-scaling-get-sync-api"],["Scrapestack","/web-scraping-apis/scrapestack/free#79-99-monthly-professional-get-scrape-scrape"],["HasData","/web-scraping-apis/hasdata/free-post-scrape-web-web-scraping-api#249-monthly-growth-3m-post-scrape-web-web-scraping-api"]]},"first":[{"provider":"Bright Data","api":"Web scraping","website":"https://brightdata.com","pricingPage":"https://brightdata.com/pricing/web-unlocker","pitch":"Bright Data Web Unlocker API (98% success rate) handles proxy rotation, anti-bot challenges and CAPTCHA solving in 1 call. Returns clean HTML or JSON.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"The Client shall not use the Services in violation of applicable law or regulations or any third party rights (including intellectual property rights) and not use the Service in any manner or for any purpose other than as stated in the intended use case provided to Bright Data, if applicable. [...] the Client will only use the Service in accordance with the Acceptable Use Policy, as may be amended from time to time. [...] When using the Data Services, the Client shall not distribute, transmit, reproduce, publish, license, transfer, or sell any Data in order to offer a similar or competitive product. [...] Client’s use of the data collector service is subject to all applicable laws, including without limitation data protection and privacy laws. To the extent applicable to processing of personal data, Client is solely responsible for determining the lawful grounds, providing notices, respecting data subject rights and all other related obligations. [...] Bright Data’s platform, technology, and network (collectively, “Services”) are meant for legitimate and legal purposes only and are subject to the Bright Data Master Service Agreement. [...] Any use of the Bright Data Services for illegal, fraudulent, or abusive activities is strictly prohibited. [...] Forbidden activities include, but are not limited to: Collection of nonpublic information (i.e data behind login); DDoS attacks; Spam: mass posting any mail/message boards/IRC/comments messages and images; Ad fraud or click fraud; Impersonation or spoofing for fraudulent purposes; Creating fake accounts or content; Use of automatic ticket purchasing (ticket-bots); Raffles, lottery, or gambling; Fake engagement (likes, comments, shares, etc.); Gaming or trading of in games items/currency; Reselling of proxies without Bright Data’s prior written approval (see our partners programs); Use of streaming related domains (videos, music or images streaming); Trading crypto/virtual currency or NFT; Any Search Engine Optimization (SEO) manipulation (i.e: fake clicks in search engines results); Posting on classified, used, and resell sites (such as Craig’s list); Completion of surveys in return for a benefit or anything of value; Any form of activity that is in violation of applicable law or regulations or any third party rights","plan":"Pay as you go","who":"anyone 18 or over, not sanctioned or in Russia, Belarus, Syria or Lebanon","billing":"one-time","charged":null,"topUp":true,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":1,"calls":null,"monthlyCap":null,"perThousand":1.5,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":"no limit","batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Web Unlocker API","method":"POST","path":"/request","send":"zone, url, format \"raw\" or \"json\"; method, country, data_format, render, debug","fields":["page HTML","page markdown","screenshot","status code","response headers"]},{"provider":"CrawlForge","api":"Web scraping","website":"https://www.crawlforge.dev","pricingPage":"https://www.crawlforge.dev/pricing","pitch":"Extract clean, readable text from HTML with intelligent parsing. Automatically removes scripts, styles, and boilerplate content while preserving the main text content.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"\"You retain all ownership rights to data you submit to the Service and data extracted using the Service (\\\"User Data\\\"). However, you grant us a worldwide, non-exclusive, royalty-free license to use, process, and store User Data solely to provide and improve the Service.\" [...] \"Data scraped from third-party websites remains the property of those websites and their respective owners. You are solely responsible for ensuring you have the right to scrape and use such data in compliance with applicable laws and website terms.\" [...] \"we grant you a limited, non-exclusive, non-transferable, non-sublicensable, revocable license to access and use the Service for your internal business purposes.\" [...] \"The following activities are strictly prohibited:\" \"Scraping websites in violation of their Terms of Service or robots.txt directives\"; \"Accessing data you are not authorized to access under applicable law or agreement\"; \"Collecting personal data in violation of privacy laws (GDPR, CCPA, etc.)\"; \"Scraping content protected by intellectual property rights without permission\"; \"Circumventing authentication, security measures, or access controls\" [...] Prohibited Activities: \"Use the Service to scrape content for spam, phishing, or malicious purposes\"; \"Resell, sublicense, or redistribute the Service without written authorization\"; \"Reverse engineer, decompile, or attempt to extract source code\"; \"Interfere with or disrupt the Service or servers/networks connected to the Service\"; \"Use automated systems (bots, scripts) to create accounts or consume credits fraudulently\"; \"Transmit viruses, malware, or other malicious code through the Service\"; \"Impersonate any person or entity or misrepresent your affiliation\" [...] Restrictions: \"Copy, modify, distribute, or create derivative works based on the Service\"; \"Remove or alter any proprietary notices or labels on the Service\"; \"Use the Service to develop competing products or services\"; \"Publicly disseminate performance benchmarks without written permission\" [...] \"Do not use CrawlForge to scrape, collect, or distribute illegal content, including copyrighted materials without authorization, personal data in violation of privacy laws, or content that violates intellectual property rights.\" \"Do not collect email addresses, phone numbers, or other contact information for the purpose of sending unsolicited communications (spam), phishing attempts, or fraudulent activities.\"","plan":"Business","who":"anyone at least 18 years of age (or the age of majority in their jurisdiction) with the legal capacity to enter into the Terms of Service","billing":"monthly","charged":null,"topUp":null,"pay":399,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":500000,"unit":"credit","renews":"month","expires":"never, while the subscription is active","costUnits":1,"calls":500000,"monthlyCap":null,"perThousand":0.798,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["agent","analyze_content","batch_scrape","browser_session","crawl_deep","deep_research","extract_content","extract_embedded_state","extract_links","extract_metadata","extract_structured","extract_with_llm","fetch_url","generate_llms_txt","get_batch_results","list_ollama_models","localization","map_site","process_document","read_result","reddit_search","scrape","scrape_structured","scrape_template","scrape_with_actions","search_web","serp_rank","stealth_mode","summarize_content","track_changes"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":10,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"extract_text","method":"POST","path":"/tools/extract_text","send":"one of html or url, Content-Type header \"application/json\"; selector, clean, preserve_links, preserve_formatting, max_length, output_format, respect_robots, escalate, escalate_engine, redact_pii","fields":["page text","page markdown","output format","word count","character count","truncated","page title","description","selector used","links preserved","formatting preserved","credits used","credits remaining","processing time","warning"]},{"provider":"Decodo","api":"Web scraping","website":"https://decodo.com","pricingPage":"https://decodo.com/web-data-api/pricing","pitch":"Turn any URL into clean HTML, JSON, CSV, or Markdown with a single request.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"a non-exclusive, non-transferable, revocable limited license to access and use the System for personal, research and your own legitimate commercial purposes [...] certain content may not be recorded, reproduced, used, distributed or displayed without the written permission of the right holders and affected parties [...] you agree not to use the System to infringe any applicable laws or third party rights, including privacy and intellectual property rights and not to engage in any Prohibited Activities","plan":"$499","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":499,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":2772222,"unit":"request","renews":"month","expires":null,"costUnits":1,"calls":2772222,"monthlyCap":null,"perThousand":0.18,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["100 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":150,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Scrape, standard proxy","method":"POST","path":"/v1/scrape","send":"url, proxy_pool \"standard\"; geo, device_type, headers, cookies, force_headers, force_cookies, session_id, http_method, payload, successful_status_codes, markdown","fields":["raw response body","page markdown","response headers","cookies","status code","task ID","created at","updated at"]},{"provider":"fastCRW","api":"Web scraping","website":"https://fastcrw.com","pricingPage":"https://fastcrw.com/pricing","pitch":"Turn any known URL into clean markdown, HTML, links, or structured JSON in one request.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"\"You retain ownership of any data you extract using the Service, subject to the intellectual property rights of the original content owners. You are solely responsible for ensuring your use of extracted data complies with applicable laws and the rights of third parties.\"; \"You agree to use the Service only for lawful purposes and in compliance with all applicable laws and regulations. You shall not use the Service to:\" \"Crawl or scrape websites in violation of their terms of service or robots.txt directives\"; \"Collect personal data without proper legal basis or consent\"; \"Engage in any activity that constitutes harassment, abuse, or harm to others\"; \"Attempt to gain unauthorized access to any system, network, or data\"; \"Distribute malware, spam, or any harmful content\"; \"Interfere with or disrupt the Service or its infrastructure\"; \"Resell, redistribute, or sublicense access to the Service without authorization\"; \"Use the Service for competitive intelligence gathering against fastCRW\"; \"Harvest child sexual abuse material (CSAM) or any other content whose collection, possession, or distribution is illegal under applicable law\"; \"Target login-walled or authenticated-only content that the caller is not authorized to access\"","plan":"Standard","who":"anyone with a fastCRW account","billing":"monthly","charged":null,"topUp":null,"pay":69,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":100000,"unit":"credit","renews":"month","expires":null,"costUnits":1,"calls":100000,"monthlyCap":null,"perThousand":0.69,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Crawl","Map","Extract","Search"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":50,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Scrape","method":"POST","path":"/v1/scrape","send":"url, Content-Type header \"application/json\"; formats, onlyMainContent, renderJs, waitFor, includeTags, excludeTags, headers, cssSelector, xpath, chunkStrategy, query, filterMode, topK, proxy, proxyList, proxyRotation, country, stealth, renderer, deadlineMs, changeTracking, parsers, screenshotFullPage, maxAge, storeInCache","fields":["page markdown","page HTML","raw HTML","page links","page title","description","source URL","status code","warning","render decision","credits used","page text","page images","content type","change tracking","screenshot","content chunks"]},{"provider":"Geekflare","api":"Web scraping","website":"https://geekflare.com","pricingPage":"https://geekflare.com/api/pricing","pitch":"Extract full page content from any URL as Markdown, JSON, HTML, or LLM-ready text. Supports JavaScript rendering, stealth mode, proxy routing, and structured data extraction.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"\"These Terms permit you to use the Services for your personal or internal business use only.\" \"[...] a limited, non-exclusive, non-sublicensable, non-transferable, revocable license to use the API to develop applications that interface with our Services.\" \"You agree not to: Use the API to create a product or service that competes directly with Geekflare. Use the API in a manner that, in our sole discretion, constitutes abuse or excessively frequent calls. Obscure or hide your application's identity when using the API.\" \"You must not use the Services, or allow anyone else to use the Services, to: [...] Send unsolicited bulk messages, phishing, or any other form of spam, or harvest contact details for that purpose. [...] Collect, process, or resell personal data unlawfully, including special category data as defined by the UK GDPR and the EU GDPR. [...] Resell, sublicense, or redistribute the Services, or use them to build a product that competes directly with Geekflare.\"","plan":"Business","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":349,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":1000000,"unit":"credit","renews":"month","expires":"when the month's credits reset, on the 1st day of the billing cycle","costUnits":1,"calls":1000000,"monthlyCap":null,"perThousand":0.349,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Meta Scraping","Brand","Search","Screenshot","PDF Generator","DNS Records","Load Time","Site Status","URL Redirection Checker","TLS Scan","Ping","Port Scanner","Broken Link Checker","Lighthouse"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":25,"concurrent":"n/a","batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Web Scraping","method":"POST","path":"/webscraping","send":"Content-Type header \"application/json\", url; device, format, renderJS, blockAds, stealth, waitTime, fileOutput, extractionMode, template, extractionSchema","fields":["timestamp","success","status code","scrape parameters","proxy used","test ID","page content","content file URL","extracted data","product title","product brand","product category","product URL","product description","product rating","product rating scale","product review count","product variants","variant SKU","variant price","variant currency","variant availability","variant images","contact company name","contact locations","contact emails","contact phones","contact forms","contact social profiles","fields found","fields missing"]},{"provider":"HasData","api":"Web scraping","website":"https://hasdata.com","pricingPage":"https://hasdata.com/prices","pitch":"Extract web data as HTML, Markdown or structured JSON. Build on public websites without managing browsers or proxy pools.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"until the license ends: \"Upon termination, you must destroy any downloaded materials in your possession\"","use":"Permission is granted to use the HasData website, APIs, and data delivered through the Services. This is the grant of a license, not a transfer of title. Under this license you may not: Modify or copy the materials; Attempt to decompile or reverse engineer any software provided by HasData; Remove any copyright or other proprietary notations from the materials; Transfer the materials to another person or “mirror” the materials on any other server; Resell the data, or resell access to the data through your paid plan, without our written permission; Republish the data in any form without our written permission; Register duplicate accounts; Programmatically access our undocumented APIs. [...] You must not use the Services or any data obtained through the Services: (a) In any way that is unlawful, illegal, fraudulent, or harmful, or in connection with any unlawful, illegal, fraudulent, or harmful purpose or activity; (b) In any way that causes, or may cause, damage to the Services or impairment of the availability or accessibility of the Services; (c) To attempt to gain unauthorized access to, interfere with, damage, or disrupt any parts of the Services, the servers on which the Services are hosted, or any server, computer, or database connected to the Services; (d) To compile, collect, or aggregate personal data in violation of any applicable data protection law, including but not limited to the General Data Protection Regulation (GDPR), the California Consumer Privacy Act (CCPA), or equivalent laws in any jurisdiction; (e) To make credit, insurance, employment, housing, or other eligibility determinations about any individual, or for any purpose regulated by the Fair Credit Reporting Act (FCRA) or similar laws; (f) To engage in stalking, harassment, surveillance, or any activity intended to cause harm to an individual; (g) To train, develop, or improve artificial intelligence or machine learning models in violation of applicable law, including but not limited to requirements under the EU AI Act; (h) Where you supply or designate the website or source to be accessed [...] in any manner that violates the terms of service of that website or source. [...]","plan":"Growth 3M","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":249,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":3000000,"unit":"credit","renews":"month","expires":"unused credits do not roll over, they expire at the end of the current billing period","costUnits":1,"calls":3000000,"monthlyCap":null,"perThousand":0.083,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":0.083,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["62 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":50,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":1777,"call":"Web Scraping API","method":"POST","path":"/scrape/web","send":"url, jsRendering false, Content-Type header \"application/json\"; proxyCountry, extractRules, screenshot, extractEmails, extractLinks, includeOnlyTags, excludeTags, removeBase64Images, wait, waitFor, blockResources, blockAds, blockUrls, jsScenario, headers, outputFormat, zdr","fields":["request ID","request status","stored HTML URL","stored JSON URL","page HTML","page markdown","page text","status code","response headers","cookies","screenshot","page links","page emails","extracted data"]},{"provider":"Hyperbrowser","api":"Web scraping","website":"https://www.hyperbrowser.ai","pricingPage":"https://www.hyperbrowser.ai/pricing","pitch":"Render a page in a browser and extract its content in the formats you request.","strengths":[],"aggregators":null,"freshness":null,"fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no API terms","use":"no API terms","plan":"Startup","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":30,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":30000,"unit":"credit","renews":"month","expires":"unused plan credits don't carry over","costUnits":1,"calls":30000,"monthlyCap":null,"perThousand":1,"waterfall":null,"listPerThousand":null,"overagePerThousand":1,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Search the web","Create new scrape job","Start an extract job","Create new session","Create new sandbox","Start a HyperAgent task","Start a browser use task","Start a CUA task","Start a claude computer use task","Start a gemini computer use task","Start a meta computer use task","Start a grok computer use task","Start a jev computer use task"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Fetch","method":"POST","path":"/api/web/fetch","send":"url; stealth, browser.location.country, browser.location.state, browser.location.city, outputs.formats[].type, outputs.formats[].fullPage, outputs.formats[].format, outputs.formats[].cropToContent, outputs.formats[].cropToContentMaxHeight, outputs.formats[].cropToContentMinHeight, outputs.sanitize, outputs.includeSelectors, outputs.excludeSelectors, outputs.storageState.localStorage, outputs.storageState.sessionStorage, browser.profileId, browser.solveCaptchas, browser.screen.width, browser.screen.height, navigation.waitUntil, navigation.timeoutMs, navigation.waitFor, cache.maxAgeSeconds","fields":["request ID","request status","page metadata","page HTML","page markdown","page links","screenshot","page branding"]},{"provider":"Irmu","api":"Web scraping","website":"https://irmu.com","pricingPage":"https://irmu.com/pricing","pitch":"One endpoint. Any website. No blocks.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"Permitted use: Collecting publicly accessible information for price monitoring, market research, SEO, lead generation, brand protection, academic research, AI training on lawfully accessible content, and testing your own properties. Prohibited use: Accessing content behind authentication you are not authorised to use, defeating paywalls, or bypassing access controls on systems you do not own. Collecting personal data without a lawful basis, scraping content protected by copyright for redistribution, or targeting sites that have contractually prohibited your access. Sending volumes designed to degrade a target's service, distributing malware, or conducting credential stuffing, fraud or any criminal activity. Circumventing plan limits, including creating or using multiple free accounts, sharing keys across organisations, or otherwise obtaining free credits beyond the one account permitted per person and per organisation. [...] Irmu is neutral infrastructure: you choose which URLs are requested and what you do with the response, and you are responsible for holding the rights or a lawful exception for that use. Extracting facts such as prices and availability is generally lawful; reproducing substantial portions of protected expression for republication is not, absent a licence or exception. [...] Free accounts may not be used to resell or sublicense the service, to provide production workloads on behalf of third parties, to run automated stress or capacity testing, or to publish benchmarks without our prior written consent.","plan":"Pro","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":200,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":3000000,"unit":"credit","renews":"month","expires":"credits reset at the start of each billing period and do not roll over unless your plan states otherwise","costUnits":1,"calls":3000000,"monthlyCap":null,"perThousand":0.0667,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":0.0667,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Run a recipe","Ask ChatGPT","Screenshot a url","Search Booking.com","Read a Booking.com property","Read Google's AI Overview"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":100,"batch":1,"minBatch":null,"answer":"in the call or by polling","latencyMs":null,"call":"Standard fetch","method":"GET","path":"/crawl","send":"url, premium \"false\", js \"false\"; adblock, wait_until, viewport, device_scale_factor, mobile, landscape, touch, user_agent, country","fields":["page HTML","credits charged"]},{"provider":"Kimi","api":"Web scraping","website":"https://platform.kimi.ai","pricingPage":"https://platform.kimi.ai/docs/pricing/limits","pitch":"Fetch the content of a URL and get the page title and body text in Markdown. Ideal for content extraction scenarios such as web reading and data curation.","strengths":[],"aggregators":null,"freshness":null,"fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"This license allows you to use Moonshot AI’s application programming interfaces (“APIs”) to integrate the Services into your own applications, products, or Services (each referred to as a “Customer Application”) and to offer those Customer Applications to End Users. [...] You are solely responsible for content and we do not claim ownership of it. [...] We may use Content to provide, maintain, develop, support, and improve the Services, comply with applicable law, enforce our terms and policies, and keep the Services safe and secure. [...] Unless otherwise expressly agreed in writing, Customer Content may be used for the foregoing purposes. [...] (3) You must not use any output relating to a person for any purpose that could have a legal or material impact on that person, such as making credit, educational, employment, housing, insurance, legal, medical, or other important decisions about them. [...] In using the Services, you must comply with all applicable laws as well as our documentation, guidelines, or policies we make available to you. For example, you will not, and will not permit End Users to: 3.1 Use the Services for any illegal or improper purposes or activities that violate applicable laws and regulations, harm the legitimate rights or interests of us or anyone [...] 3.2 Engage in the following activities that endanger network security, operational security or create risks of the Services: [...] (5) For developing, serving, or creating applications, products, Services, or models that have potential competitive possibilities with the Services without authorization. (6) Copying, transferring, renting, lending, selling, or providing sub-licensing or re-licensing of the Services in whole or in part without authorization. [...] 3.4 Use the Services to: [...] (3) Evaluate or classify individuals based on their social behavior or personal traits leading to detrimental or unfavorable treatment. [...] (9) Use any method to extract data from the Services other than as permitted through the APIs; or buy, sell, or transfer API keys from, to or with a third party.","plan":"Tier0","who":"anyone at least 18 years old or the minimum age required by their country to consent to such use (an enterprise account needs authorization from the business), and not the subject of any trade restrictions, sanctions, or other legal or regulatory restrictions","billing":"one-time","charged":null,"topUp":true,"pay":1,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":1,"unit":"usd","renews":null,"expires":null,"costUnits":0.002,"calls":500,"monthlyCap":null,"perThousand":2,"waterfall":null,"listPerThousand":2,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Web Search Basic","Web Search Pro","Chat Completions API","Responses API","Messages API","Create Batch"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":null,"method":"POST","path":"/v1/tools/fetch","send":"url","fields":["URL","page title","page content"]},{"provider":"MrScraper","api":"Web scraping","website":"https://mrscraper.com","pricingPage":"https://docs.mrscraper.com/docs/integrations/x402/agentic-market","pitch":"scraperAPI retrieves a public page as rendered HTML, Markdown, a screenshot, or a combination of these outputs.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"The breach of AUP would be considered any of the activities established below (“Prohibited activities”): 1. Posting, transmission, re-transmission, accessing or storing (“Access”) material on or through the Services, if in the sole judgment of Mrscraper such Access is: (a) in violation of any local, state, federal, or non-United States law or regulation (including rights protected by copyright, trade secret, patent or other intellectual property or similar laws or regulations); (b) threatening or abusive; (c) obscene; (d) indecent; or (e) defamatory. [...] 7. Sending unsolicited mail messages, including the sending of \"junk mail\" or other advertising material to individuals who did not specifically request such material [...]. 8. Using the Services in any way for the use of ticket buying bots. 9. Using the Services in any way to generate invalid ad traffic (via clicks, impressions or otherwise). [...] For this reason we require the Customer not to use the Services in a way that would: 1. Be in violation of relevant terms of use/service or other legal documents; 2. Include collecting or accessing non-public data. Unless the Customer has permission from the site, only publicly available data may be scraped; 3. Include collecting or accessing sensitive data (health data, data regarding children). Terms of Use, Code Of Conduct: No illegal activities; No fraud; No spam and data mining; No exploitation; No impersonation; No activities related to bots; No use other than the intended","plan":"Agentic Market x402","who":"anyone with a USDC balance and an x402 v2 buyer client; no MrScraper API key or account","auth":"none","billing":"on-demand","charged":"per call","topUp":null,"pay":0.001,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":1,"unit":"request","renews":null,"expires":null,"costUnits":1,"calls":1,"monthlyCap":null,"perThousand":1,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"scraperAPI","method":"POST","path":"/api/mrscraper/scraperAPI","send":"url; html, markdown, screenshot, proxyCountry, geoCode, browserRendering, timeout, maxRetries, tokenCap, waitUntil, waitForSelector, blockResources, warmStart, returnCookie, super","fields":["HTML","Markdown","screenshot","runtime","retry count"]},{"provider":"Olostep","api":"Web scraping","website":"https://www.olostep.com","pricingPage":"https://www.olostep.com/pricing","pitch":"Scrape a url with provided configuration and get content.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"You will use the Services only in compliance with all applicable laws and regulations and only for the use cases you have disclosed to us (if applicable). [...] The following are prohibited activities under this Agreement: Use the Services for any commercial purposes except as expressly authorized by Olostep; Reproduce any portion of the Services in any form or by any means, except as expressly permitted in this Agreement; Modify, rent, lease, loan, sell, distribute, or create derivative works based on the Services in any manner; Use the Services for any unlawful activities or in violation of any laws, regulations, or contractual provisions; Use the Services to promote violence, degradation, subjugation, discrimination or hatred against individuals or groups; Access another's account without permission; Decompile, reverse engineer, or otherwise attempt to obtain the source code of the Services; Use the Services for debt collection purposes; Use the Services for hard background check purposes; Use the Services to determine eligibility for a government license; Use the Services for any purpose prohibited by applicable data privacy and security laws, including the GDPR or CCPA; Use our Services to benefit any government agency operating as an intelligence agency whose purpose is to collect and analyze data on people; Use the Services for any evidentiary purpose related to law enforcement or criminal prosecution without proper authorization; Use or resell Services in connection with any purpose covered by the Fair Credit Reporting Act; Scrape websites that explicitly prohibit automated access in their terms of service or robots.txt files; Overload or attempt to disrupt target websites or our infrastructure","plan":"Standard","who":"anyone at least 18 years old (or the legal age of majority), or 13 or older with a parent's or guardian's permission","billing":"monthly","charged":null,"topUp":null,"pay":99,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":200000,"unit":"credit","renews":"month","expires":null,"costUnits":1,"calls":200000,"monthlyCap":null,"perThousand":0.495,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Create Batch","Create Crawl","Create Map","Create Answer","Create Search"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":500,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Create Scrape","method":"POST","path":"/v1/scrapes","send":"url_to_scrape; wait_before_scraping, formats, remove_css_selectors, actions, country, transformer, remove_images, remove_class_names, parser, llm_extract, links_on_page, screen_size, screenshot, metadata, max_age, storage","fields":["scrape ID","created at","metadata","URL","page HTML","page markdown","page text","screenshot URL","hosted HTML URL","hosted markdown URL","hosted text URL","page links","status code","page title","credits consumed","cost in dollars"]},{"provider":"OpenWeb Ninja","api":"Web scraping","website":"https://www.openwebninja.com","pricingPage":"https://www.openwebninja.com/api/web-unblocker","pitch":"Fetch the HTML of a Website With Our Ultra-Scalable, Reliable, and Stealthy Scraper API. Includes JavaScript Rendering, Rotating Proxies, and Smart Retries.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"we additionally grant you a non-exclusive, non-transferable license to use, reproduce, and commercially exploit such API Data in your own products, services, applications, or business, including for resale or redistribution as part of a broader product offering, provided that you do not resell, sublicense, or redistribute API Data as a standalone data or API product that substantially replicates the Services themselves [...] As a user of the Services, you agree not to: [...] Use any information obtained from the Services in order to harass, abuse, or harm another person. [...] Use the Services in a manner inconsistent with any applicable laws or regulations. [...] Use the Services to build, operate, or support a product or service that functions as a substitute for the Services themselves (for example, a competing data-access API sourced by re-extracting our underlying Content), as distinct from ordinary commercial use of API Data licensed to you under Section 2.","plan":"Mega","who":"anyone, a minor with a parent's permission","billing":"monthly","charged":null,"topUp":null,"pay":150,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":1000000,"unit":"request","renews":"month","expires":null,"costUnits":1,"calls":1000000,"monthlyCap":null,"perThousand":0.15,"waterfall":null,"listPerThousand":null,"overagePerThousand":0.15,"unitsCap":"soft","addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Web Unblocker with JavaScript rendering"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":30,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Web Unblocker","method":"POST","path":"/request","send":"url, render_js false; body, proxy, render, cookies, country, headers, extra_retries, wait_for_timeout, success_selectors, wait_for_selector, failiure_selectors, min_response_length, success_status_codes","fields":["status","request ID","request parameters","page content","page status code","page headers","page cookies","final URL","page content length"]},{"provider":"Oxylabs","api":"Web scraping","website":"https://oxylabs.io","pricingPage":"https://oxylabs.io/products/web-api/scrape/targets/pricing","pitch":"The /v1/scrape endpoint fetches web pages by URL, automatically handling headless rendering, proxy rotation, access challenges, and localization.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"General Conditions: “Without our written consent you may not access the Services for purposes of monitoring their availability, performance or functionality or for any other competitive purposes.” 4.2.5: “the Services can only be used for lawful and legitimate purposes as defined by the best practice standards and this Agreement. Pursuant to the preamble, the Services cannot be used for competitive purposes”. 4.2.9: “the Services shall be used only by and for the benefit of the Customer”. 4.2.10: “the Customer shall not: sell, resell (unless explicitly agreed otherwise in the SoW), license, sublicense, distribute, make available, rent or lease the Services; interfere with or disrupt the integrity or performance of the Services; permit direct or indirect access to or use of the Services in a way that circumvents the agreed usage limits or other specifications, or use the Services in a manner that violates our Acceptable Use Policy; access or use any of Oxylabs’ intellectual property except as permitted under this Agreement; modify, copy, or create derivative works based on the Services or any part, feature, function or interface thereof; disassemble, reverse engineer, or decompile the Services, or access it to (1) build a competitive product or service, (2) build a product or service using similar ideas, features, functions or graphics of the Services, (3) copy any ideas, features, functions or graphics of the Services; (4) determine whether the Services are within the scope of any patent.” 4.2.11: “If the Customer uses the Services in relation to artificial intelligence (hereinafter - “AI”) systems or models [...] the Customer represents and warrants that such activities comply with all applicable AI laws, including but not limited to the EU Artificial Intelligence Act (the “EU AI Act”), and that it will not use the Services in connection with any AI system falling within Prohibited AI Practices, as defined in the EU AI Act or other activities prohibited by applicable AI laws.” 8.1: “You are solely responsible for the Data you Access by using the Services. As one of the conditions to your use of the Services you agree to not use the Services in a way that would infringe any applicable laws or third party rights, including privacy and intellectual property rights, this Agreement, including but not limited to Acceptable Use Policy.” “The Customer acknowledges that automated data gathering conducted by the Customer by using the Services may constitute input for AI training or development and undertakes to ensure that any such data collection is lawful, respects third-party rights, and is compatible with the Customer’s EU AI Act obligations and other AI Laws.” 4.3.9: “Oxylabs reserves the right to retain data gathered through the Customer's use of the Web Scraper API and Web Unblocker Services under this Agreement and may use it at its sole discretion. Oxylabs will take full responsibility for any and all Oxylabs's use of such data.” Acceptable Use Policy, Automated data gathering: “For this reason we require the Customer not to use the Services (or the data obtained through them) in a way that would: 1. Include collecting or accessing non-public data. Unless the Customer has permission from the site, only publicly available data may be scraped; 2. Be in violation of applicable terms of use/service or other legal documents; 3. Include collecting, accessing, requesting, querying, searching for, or otherwise processing special categories of personal data (e.g., health data); or personal data of minors without a valid legal basis and compliance with applicable legal requirements; 4. Include collecting, accessing, requesting, querying, searching for, or otherwise processing any personal data, unless the Customer (i) has a valid legal basis, (ii) ensures full compliance with all obligations to data subjects under applicable law, (iii) implements appropriate technical and organizational safeguards to protect personal data, and (iv) implements other relevant data protection requirements; 5. Include developing, training, deploying, operating or using Artificial intelligence systems in any manner that violates applicable laws or regulations (including the EU AI Act) or any third party rights. 6. Amount to the extraction or re-utilization of all or a substantial part of the contents of a third-party database, including through the repeated and systematic extraction of insubstantial parts thereof or by reconstructing such contents from data obtained through the Services.” Acceptable Use Policy, Prohibited activities: “The breach of AUP would be considered any of the activities established below (“Prohibited activities”): 1. Posting, requesting, searching for, querying, transmissioning, re-transmissioning, accessing or storing (“Access”) material on or through the Services, if in the sole judgment of Oxylabs such Access is: (a) in violation of any local, state, federal, or non-United States law or regulation (including rights protected by copyright and related rights, including but not limited to database, trade secret, patent or other intellectual property or similar laws or regulations); (b) threatening or abusive; (c) obscene; (d) indecent; or (e) defamatory. Each Customer shall be responsible for determining what laws or regulations are applicable to its use of the products and services. 2. Introduction of malicious programs into the Oxylabs servers (e.g., viruses, trojan horses, worms and etc.). 3. Causing or attempting to cause security breaches or disruptions of Internet communications. Examples of security breaches include but are not limited to accessing/ data of which the Customer is not an intended recipient, or logging into a server or account that the Customer is not expressly authorized to access/request. Examples of disruptions include but are not limited to port scans, flood pings, packet spoofing and forged routing information. 4. Circumventing user authentication or security of any host, network or account or any usage limit, rate limit or other restriction applied by Oxylabs to the Services . 5. Interfering with or denying service to any user other than the Customer's host (e.g., denial of service attack). 6. Furnishing false or incorrect data on the SoW (electronic or paper) or when signing up on Oxylabs self-service dashboard, including fraudulent use of credit card numbers or attempting to circumvent or alter the processes or procedures to document \"use\" of Oxylabs products or Services. 7. Sending unsolicited mail messages, including the sending of \"junk mail\" or other advertising material to individuals who did not specifically request such material, who were not previous customers of the Customer or with whom the Customer does not have an existing business relationship (e.g., E-mail \"spam\"); or distributing, advertising or promoting software or services that have the primary purpose of encouraging or facilitating unsolicited commercial E-mail or spam. 8. Using the Services in any way for the use of ticket buying bots or other automated purchasing tools where such use is prohibited by applicable law. 9. Using the Services in any way to generate invalid ad traffic (via clicks, impressions or otherwise). 10. Using the Services on behalf of or for the benefit of any person subject to sanctions, or to circumvent sanctions, export controls. 10. Using the Services to develop, train, deploy, operate or use any AI system or model that falls within the Prohibited AI Practices under the EU Artificial Intelligence Act (“EU AI Act”)(including, without limitation, biometric categorization based on sensitive traits, social scoring, emotion recognition in workplace or educational contexts, or the untargeted collection of facial images). Where the Services are used to develop, train, deploy, operate or use any High-Risk AI System or General-Purpose AI Model (GPAI) as defined by the EU AI Act, the Customer must ensure full compliance with all applicable obligations under the EU AI Act.”","plan":"Flexible","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":500,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":500,"unit":"usd","renews":"month","expires":"at the end of the billing cycle; carried over only when you upgrade","costUnits":0.0008,"calls":625000,"monthlyCap":null,"perThousand":0.8,"waterfall":null,"listPerThousand":0.8,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["167 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Scrape","method":"POST","path":"/v1/scrape","send":"url, run_js \"false\"; output, location, device","fields":["status","HTML","Markdown","screenshot","URL","location","device","timestamp","request ID"]},{"provider":"ScrapeGraphAI","api":"Web scraping","website":"https://scrapegraphai.com","pricingPage":"https://scrapegraphai.com/pricing","pitch":"Convert any URL to clean markdown, HTML, screenshots, or branding analysis","strengths":[],"aggregators":null,"freshness":null,"fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"As between you and ScrapeGraphAI, you retain your rights in Customer Data. We do not claim ownership of your Customer Data or Outputs. [...] You may use the service only for lawful, authorized, and responsible purposes. You may not, and may not allow anyone else to: use the service to violate any law, regulation, court order, contract, third-party terms, privacy right, intellectual-property right, or other legal obligation; bypass or attempt to bypass logins, paywalls, CAPTCHAs, rate limits, robots restrictions, access controls, anti-bot systems, or technical measures without authorization; collect, infer, process, or store personal data, sensitive personal data, health data, biometric data, children's data, payment data, or government identifiers without a lawful basis and all required notices and consents; perform credential stuffing, account takeover, card testing, spam, phishing, malware distribution, vulnerability scanning, denial-of-service activity, or other abusive or security-harmful activity; scrape or process content to create illegal discrimination, unlawful surveillance, deceptive profiling, or decisions that require human review or regulated compliance controls; overload, disrupt, damage, or degrade ScrapeGraphAI, a target website, a third-party service, or the experience of other users; resell, sublicense, or provide the service to third parties in a way that hides or misrepresents your responsibility for their use; use the service to develop a competing service by copying our APIs, systems, documentation, or user experience, except to the extent applicable law prohibits this restriction. [...] If you use the service through a free plan or other no-charge access, you agree that ScrapeGraphAI may use Free Plan Data for scientific research, product research, model evaluation, model training, model fine-tuning, benchmark development, safety improvement, abuse detection, quality improvement, and service improvement.","plan":"Pro Plan","who":"anyone who can form a binding contract and whose use is lawful where they and their users operate (its terms: \"You may use ScrapeGraphAI only if you can form a binding contract and if your use is lawful in the places where you and your users operate.\")","billing":"monthly","charged":null,"topUp":null,"pay":500,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":750000,"unit":"credit","renews":"month","expires":"unused credits do not carry over between billing cycles","costUnits":1,"calls":750000,"monthlyCap":null,"perThousand":0.6667,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":["Create monitor: 100 monitors","Start crawl: 50 concurrent crawls"],"sharesBudgetWith":["Extract","Search","Start crawl","Create monitor"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":83.33,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Scrape HTML","method":"POST","path":"/api/scrape","send":"url, formats[].type \"html\"; formats[].mode, contentType, allowedTypes, processors[].type, processors[].maxPages, fetchConfig.mode, fetchConfig.stealth, fetchConfig.headers, fetchConfig.cookies, fetchConfig.scrolls, fetchConfig.wait, fetchConfig.timeout, fetchConfig.country","fields":["scrape ID","page HTML","content type"]},{"provider":"Scrapeless","api":"Web scraping","website":"https://www.scrapeless.com","pricingPage":"https://www.scrapeless.com/en/pricing","pitch":"Unblock any public website in one API call — bot detection, CAPTCHAs, IP rotation, and JavaScript rendering handled for you. Pay only for successful requests.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"The Scrapeless platform, technology and network (together, the \"Services\") may be used only for lawful and legitimate purposes, and are subject to the Scrapeless Terms & Conditions. [...] Prohibited activities include, but are not limited to, the following: Collecting non-public information, meaning data located behind a login, a registration wall or a paywall. DDoS attacks of any kind, or any other activity that compromises the security of third-party systems. Spam: bulk distribution of emails, message board, IRC or comment postings, and images. Ad fraud or click fraud. Impersonation or spoofing for fraudulent purposes. Creating fake accounts or fake content. Use of automated ticket purchasing programs (ticket bots). Sweepstakes, lotteries or gambling. Fake engagement, including likes, comments and shares. Farming or trading of in-game items or virtual currency. Reselling proxies or the Services without the prior written consent of Scrapeless. Use of streaming-related domains, including video, music or image streaming. Trading in cryptocurrencies, virtual currencies or NFTs. Search engine optimisation (SEO) manipulation of any kind, such as generating artificial clicks in search results. Improper posting on classified, second-hand and resale websites, such as Craigslist. Completing surveys for the purpose of obtaining a benefit or anything of value. Circumventing the authentication or security measures of any host, network or account. Accessing, collecting or processing sensitive or special categories of data, including health data and children's data. Any activity that violates applicable laws or regulations, or the rights of any third party.","plan":"Growth","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":49,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":49,"unit":"usd","renews":"month","expires":"end of the month","costUnits":0.0009,"calls":54444.444444,"monthlyCap":null,"perThousand":0.9,"waterfall":null,"listPerThousand":0.9,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Google Search","Google Images","Google Local","Google Videos","Google Shopping","Google Scholar","Amazon Scraper","ChatGPT Scraper","Perplexity Scraper","Gemini Scraper","Copilot Scraper","Google AI Mode Scraper","Google AI Overview Scraper","Grok Scraper","Agent Browser","JS Render"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":5452,"call":"Web Unlocker","method":"POST","path":"/api/v2/unlocker/request","send":"actor \"unlocker.webunlocker\", input.url, input.method, proxy, Content-Type header \"application/json\"; input.redirect, input.header, proxy.country, proxy.url","fields":["response code","page HTML"]},{"provider":"ScrapeOwl","api":"Web scraping","website":"https://scrapeowl.com","pricingPage":"https://scrapeowl.com/pricing/","pitch":"ScrapeOwl is a web scraping API that unlike other scraping APIs, only gets you the elements that you specify.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"You are permitted to use the Website for your personal, non-commercial use, or legitimate business purposes, provided that your activities are lawful and in accordance with these Terms of Service. Prohibited uses include violation of laws and regulations, hacking the Website in any manner, or violating the Content Standards set below. No right, title or interest in or to the Website or any content on the site is transferred to you, and all rights not expressly granted are reserved. Any use of the Website not expressly permitted by these Terms of Service is a breach of these Terms of Service and can lead to account termination.","plan":"Business","who":"For now, we provide this Website for use only by persons located in the United States","billing":"monthly","charged":null,"topUp":null,"pay":249,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":3000000,"unit":"credit","renews":"month","expires":null,"costUnits":1,"calls":3000000,"monthlyCap":null,"perThousand":0.083,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":0.083,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Scrape API, rotating proxies with render_js","Scrape API, premium proxies without render_js","Scrape API, premium proxies with render_js"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":50,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Scrape API, rotating proxies without render_js","method":"POST","path":"/v1/scrape","send":"url, render_js false, premium_proxies false; elements, elements[].type, elements[].selector, elements[].html, elements[].attributes, html, return_headers, return_cookies, cookies, headers, request_method, post_data","fields":["status code","billed","credits available","credits used","credit cost","page HTML","extracted data","response headers","cookies","screenshot"]},{"provider":"ScraperAPI","api":"Web scraping","website":"https://www.scraperapi.com","pricingPage":"https://www.scraperapi.com/pricing","pitch":"You send a request, and we take care of proxies, browsers, CAPTCHAs, and protections in the background.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"You may use the Platform and Services solely for the purposes of data extraction from publicly accessible pages or APIs on publicly accessible websites [...] provided such use does not conflict with these Terms of Use. [...] It is strictly prohibited to gather data from third party sites in violation of the third party sites’ own terms of service, or by logging into a website that is protected by authentication and/or authorisation mechanisms such as OAUTH or API Key or login. [...] You may not: Use them in a manner likely to unreasonably limit usage by our other customers, including but not limited to burdening the server on which the Platform is located by automated requests outside the interface designed for such a purpose or otherwise harm other customers, us, our proxies or any target websites in any way; Gather, save, enable the transmission to third parties or enable access to the content that is (themselves or their accessibility) contradictory to the generally binding legal regulations effective under applicable law where the Platform or Services are used or where detrimental consequences could arise by taking such actions [...]","plan":"Scaling","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":475,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":5000000,"unit":"credit","renews":"month","expires":"at renewal","costUnits":1,"calls":5000000,"monthlyCap":null,"perThousand":0.095,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Amazon Product API","Amazon Search API","Amazon Offers API","eBay Product API","eBay Search API","Home Depot Product API","Home Depot Reviews API","Home Depot Search API","Walmart Product API","Walmart Search API","Walmart Category API","Walmart Reviews API","Google News API","Google Jobs API","Google Shopping API","Google Maps Search API","Redfin Agent Details API","Redfin 'For Rent' Listings API","Redfin 'For Sale' Listings API","Redfin Listing Search API","ChatGPT","Perplexity","Gemini","Google AI Mode","Google SERP API","Sync API with JS rendering","Sync API with premium proxies","Sync API with premium proxies and JS rendering","Sync API with ultra premium","Sync API with ultra premium and JS rendering","Sync API with screenshot","Async API","Async API with JS rendering","Async API with premium proxies","Async API with premium proxies and JS rendering","Async API with ultra premium","Async API with ultra premium and JS rendering"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":200,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":2121,"call":"Sync API","method":"GET","path":"/","send":"url; country_code, session_number, keep_headers, device_type, output_format, follow_redirect, autoparse, max_cost","fields":["page HTML","page markdown","page text","credits used"]},{"provider":"Scrapestack","api":"Web scraping","website":"https://scrapestack.com","pricingPage":"https://scrapestack.com/pricing","pitch":"Scrape Web Pages Worldwide in Milliseconds Handling Millions of Proxy IPs, Browsers & CAPTCHAs","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"until the Agreement ends","use":"Subject to Your compliance with the terms of this Agreement, You are hereby permitted to receive, process, and display scrapestack API Data & Services to individual end-users of your application(s), provided such end users use scrapestack API Data & Services strictly for their own personal use, You do not permit Your end users to store, distribute, or otherwise exploit scrapestack API Data & Services for any other purposes. For clarity, and without limiting the forgoing, You are permitted solely to use scrapestack API Data & Services for reference by Your end users. Except as expressly provided herein, under no circumstances whatsoever may You transfer or permit the transfer of scrapestack API Data & Services outside of your application(s). [...] You shall not: reproduce, copy, modify, distribute, market, display, transfer, sublicense, assign, prepare derivative work(s) or adaptation(s) based on, sell, exchange, barter or transfer, rent, lease, loan, time-share, resell, or in any other manner exploit scrapestack API Data & Services or the scrapestack API; make access to scrapestack API Data & Services or the scrapestack API available to unauthorized parties, or otherwise post or distribute scrapestack API Data & Services in any public forum including, but not limited to, print, newsletters, radio, television, or internet; [...] use, store, or access any scrapestack API Data & Services, or the scrapestack API after the termination of this Agreement; use or permit others to use, market, distribute, or export scrapestack API Data & Services, or the scrapestack API; or, use scrapestack API Data & Services or the scrapestack API in any manner or for any purpose that violates any law, regulation or right of any person. [...] You shall not use the scrapestack API in a manner that exceeds reasonable request volume or constitutes excessive or abusive usage.","plan":"Professional","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":79.99,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":1000000,"unit":"request","renews":"month","expires":"at renewal","costUnits":1,"calls":1000000,"monthlyCap":null,"perThousand":0.08,"waterfall":null,"listPerThousand":null,"overagePerThousand":0.32,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Scrape with premium_proxy=1"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":1676,"call":"Scrape","method":"GET","path":"/scrape","send":"url; render_js, proxy_location, keep_headers","fields":["page HTML","response headers"]},{"provider":"ScrapingAnt","api":"Web scraping","website":"https://scrapingant.com","pricingPage":"https://scrapingant.com/#pricing","pitch":"Web data infrastructure for builders. Headless Chrome, 3M+ rotating proxies, parallel concurrency, and AI extraction — behind one API.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"\"You must use the data you collect from third parties when using our Services only in compliance with all terms and conditions, policies of third parties and laws, rules, regulations applicable to your data collection process.\" \"You agree that you use the Services solely for collecting data from publicly accessible websites. Whenever such websites contain proprietary, copyrighted and/or confidential data, you agree to comply with all terms and conditions, policies of such websites and all copyright and other intellectual property laws and regulations regarding protection of type of data you collect. You also agree to comply with data protection laws within any applicable jurisdiction, including comply with GDPR in all respects.\" [...] \"By accessing to and/or using the Services you shall not collect illegal, hate-related, drug-related data or any data that violates these Terms or terms and conditions of websites where you collect data. You shall not engage in any fraudulent business practices or any other activity that is illegal under applicable laws.\" [...] \"WE DO NOT PROVIDE YOU WITH ANY RIGHTS, LICENSE OR PERMISSIONS REGARDING COLLECTION DATA THROUGH THE SERVICES.\"","plan":"Startup","who":"anyone at least 18 years old, or with a parent's permission","billing":"monthly","charged":null,"topUp":null,"pay":49,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":500000,"unit":"credit","renews":"month","expires":"unused credits are not transferred to the next subscription period","costUnits":1,"calls":500000,"monthlyCap":null,"perThousand":0.098,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":0.098,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Web Scraping API","Markdown Transformation/Extraction","AI Data Extraction"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":"no limit","batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Extended JSON: Simple request (no browser usage) + standard (datacenter) proxy","method":"GET","path":"/v2/extended","send":"url, browser false; timeout, cookies, proxy_country","fields":["page HTML","page text","cookies","status code","response headers","XHR requests","iframes"]},{"provider":"ScrapingBee","api":"Web scraping","website":"https://www.scrapingbee.com","pricingPage":"https://www.scrapingbee.com/pricing","pitch":"ScrapingBee is meant to be the easiest scraping API available on the web.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"until the agreement ends","use":"User represents and warrants that it uses the Services, the web scraping operations performed, User’s Data, and the use of User’s Data complies with (i) any applicable laws, rules, or regulations of any jurisdictions regarding the use of the Services (ii) the Documentation, the terms of the Agreement, and in particular the AUP. [...] User is solely responsible that web scraping operations performed using a configuration created or provided as part of the Services are duly authorized by the applicable terms and conditions of the targeted databases, websites, or other sources. [...] The Services are limited to an individual use by the User as part of their professional activities. Use of the API or the Services for personal purposes is strictly forbidden. Users undertake not to exploit or communicate to third parties any configuration developed by others or any other element issued from their use of the Services except when expressly authorized. [...] Any sharing of a medium, material authorized by VostokInc from the Services incorporating data elements of the Services or from VostokInc shall systematically include a link to VostokInc.","plan":"Business","who":"any natural person aged at least 18 years old with full and complete legal capacity acting in the scope of their professional activity or being the legal representative of a legal entity empowered to enter into legally binding commitments","billing":"monthly","charged":null,"topUp":null,"pay":249,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":3000000,"unit":"credit","renews":"month","expires":"valid for one month and don't roll over","costUnits":1,"calls":3000000,"monthlyCap":null,"perThousand":0.083,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["HTML API","HTML API, premium proxy","HTML API, premium proxy without JavaScript rendering","HTML API, stealth proxy","Google Search API, light request","Google Search API, regular request","Fast Search API","Amazon API","Walmart API","ChatGPT API","Gemini API","Youtube API","Employee Search API"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[{"fields":["AI extracted data"],"perThousand":0.415}],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":200,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"HTML API, without JavaScript rendering","method":"GET","path":"/api/v1/","send":"url; add_html, ai_extract_rules, ai_query, ai_selector, cookies, country_code, device, extract_rules, forward_headers, forward_headers_pure, js_scenario, json_response, own_proxy, premium_proxy \"false\", render_js \"false\", return_page_markdown, return_page_text, scraping_config, session_id, stealth_proxy \"false\", tag, timeout, transparent_status_code, wait, wait_browser, wait_for","fields":["page HTML","page markdown","page text","extracted data","response headers","credit cost","initial status code","resolved URL","response type","cookies","iframes","XHR requests","page metadata"]},{"provider":"Scrappa","api":"Web scraping","website":"https://scrappa.co","pricingPage":"https://scrappa.co/pricing","pitch":"Fetch any URL and extract structured data including title, meta description, keywords, favicon, social links, all links on the page, emails, phone numbers, images, body text, and detected languages.","strengths":[],"aggregators":null,"freshness":null,"fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"Subject to these Terms, we permit you to use API output lawfully obtained through your account in your own commercial or non-commercial applications, websites, and reports. This includes storing and caching output, displaying it to your users, linking to original sources, combining and comparing it with other data, and performing analytics, including AI-assisted analysis. [...] Reselling API output as a standalone dataset or data feed, or reselling access to the Service, requires our written authorization. [...] Public availability and delivery through the API do not, by themselves, establish a right to reuse content. [...] You are responsible for establishing a lawful basis for your use, obtaining any permissions required, and complying with applicable laws and third-party terms that legally apply to your use. This includes any applicable attribution, retention, deletion, redistribution, and AI or text-and-data-mining restrictions. [...] You agree not to: Use the Service for any illegal purpose or in violation of any laws; Violate or infringe upon the rights of others; Attempt to reverse engineer, decompile, or disassemble the Service; Interfere with or disrupt the Service or servers connected to the Service; Resell or redistribute API output outside the application uses permitted by Section 8 without our written authorization; Use the Service to scrape or collect data in violation of third-party terms of service that legally apply to your use; Attempt to gain unauthorized access to any portion of the Service","plan":"Starter","who":"anyone 18 or over","billing":"one-time","charged":null,"topUp":false,"pay":10,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":33000,"unit":"request","renews":null,"expires":"12 months","costUnits":1,"calls":33000,"monthlyCap":null,"perThousand":0.303,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["2,378 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":"no limit","batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":null,"method":"GET","path":"/api/web-scraper","send":"url; include_html, javascript, response_type","fields":["status code","URL","final URL","page title","description","keywords","favicon","social links","extracted keywords","page links","page emails","page phone numbers","page images","page text","languages detected","page HTML","page markdown"]},{"provider":"Social Fetch","api":"Web scraping","website":"https://www.socialfetch.dev","pricingPage":"https://www.socialfetch.dev/pricing","pitch":"Fetch cleaned HTML for a web page URL.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"You agree not to: Use the Services in violation of applicable law. Use outputs to harass, surveil, discriminate against, or harm individuals or groups. Send spam, manipulate platforms, or engage in deceptive or fraudulent activity. Infringe intellectual property or other rights of third parties. Attempt to access non-public data, bypass rate limits or technical controls, or probe our systems in ways that could harm availability or security. Resell or redistribute the Services in ways that misrepresent their source, or use them to build a substantially similar competing API without our written consent. [...] On any plan you may incorporate Social Fetch data outputs into your own products and services, present them under your own brand without attribution to us, and supply them to your own customers. You may not share or resell API keys or other access credentials, expose the Social Fetch API itself as a like-for-like API, or build a substantially similar competing API. This gives you no right beyond what we hold ourselves in the underlying data: the terms of the source platforms, restrictions that apply to us and applicable law, including data-protection law, still apply, and you remain responsible for how your own customers use what you supply. [...] Subject to these Terms, we grant you a limited, non-exclusive, non-transferable right to use the Services for your internal business purposes or to power your applications for your end users, in each case as intended.","plan":"Starter","who":"anyone; for an organisation, someone with the authority to bind it","billing":"monthly","charged":null,"topUp":null,"pay":29,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":18000,"unit":"credit","renews":"month","expires":"do not roll over","costUnits":1,"calls":18000,"monthlyCap":null,"perThousand":1.6111,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":1.6111,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":"never","alsoPaysFor":[],"sharesBudgetWith":["263 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":200,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Generate web page HTML","method":"GET","path":"/v1/web/html","send":"url; scanFullPage, waitFor","fields":["lookup status","URL","HTTP status","HTML","page metadata","internal links","external links","images","videos","audio","request ID","credits charged","API version"]},{"provider":"StealthASF","api":"Web scraping","website":"https://stealthasf.com","pricingPage":"https://stealthasf.com/pricing","pitch":"One request. We get past Cloudflare, DataDome, Akamai, PerimeterX, Kasada and more, render JavaScript, rotate residential IPs and even find the hidden API for you. Clean JSON back.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"You are responsible for what you collect and how you use it, including compliance with data protection, copyright, database and computer-misuse laws and with any obligations you have towards the websites you access. You must not use the Service to: collect personal data without a lawful basis, or build profiles of private individuals; access content behind a login, paywall or other access control you are not authorised to use, or use other people's credentials; overload, disrupt or attack any system, including denial-of-service, vulnerability scanning or exploitation; send spam, distribute malware, commit fraud or infringe intellectual property rights; access our own infrastructure or internal networks, or resell the Service without our written consent.","plan":"Pro","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":49,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":250000,"unit":"credit","renews":"month","expires":"unused monthly credits do not carry over: 72 hours after the paid period ends on a card, or when the next paid invoice resets the monthly allowance, whichever comes first","costUnits":1,"calls":250000,"monthlyCap":null,"perThousand":0.196,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["JavaScript rendering","Protected (stealth) request","Ultra request"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":2,"concurrent":8,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Plain request","method":"POST","path":"/v1/scrape","send":"url, engine \"http\", content-type header \"application/json\"; country, extract","fields":["success","job ID","engine used","status code","page HTML","extracted data","step records","discovered API","bytes transferred","proxy transfer in MB","processing time in ms","credits charged","credits balance"]},{"provider":"WebcrawlerAPI","api":"Web scraping","website":"https://webcrawlerapi.com","pricingPage":"https://webcrawlerapi.com/pricing","pitch":"An LLM removes menus, footers, and banners so you get only the main content.","strengths":[],"aggregators":null,"freshness":null,"fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"Output: Subject to these Terms and applicable law, you may use output generated from your jobs. [...] You are solely responsible for: [...] compliance with target website terms, robots directives, and other access restrictions where applicable; ensuring you have a lawful basis for any data you collect or process. You must not use the Service for unlawful surveillance, credential theft, malware distribution, spam/phishing, sanctions evasion, or any activity that violates law or third-party rights. [...] You must not: [...] use the Service to collect sensitive data in violation of law; [...] use the Service to reproduce, distribute, or otherwise infringe copyrighted content without authorization.","plan":"Pay as you go","who":"anyone at least 18 years old (or the age of majority in your jurisdiction) and legally capable of entering into contracts","billing":"one-time","charged":null,"topUp":true,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"usd","renews":null,"expires":null,"costUnits":0.006,"calls":null,"monthlyCap":null,"perThousand":6,"waterfall":null,"listPerThousand":6,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Scrape a page","Crawl a website","Run agent"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":5,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Markdown (LLM-cleaned)","method":"GET","path":"/markdown","send":"url","fields":["page markdown"]},{"provider":"WebScraping.AI","api":"Web scraping","website":"https://webscraping.ai","pricingPage":"https://webscraping.ai/#pricing","pitch":"Fetch the full HTML content of any webpage. Includes JavaScript rendering via headless Chrome and automatic proxy rotation.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"6.1 Permitted Use. You may use the Site and Service to extract data from publicly accessible pages or APIs on publicly accessible Target Websites, provided that such use does not conflict with these Terms, applicable law, or Section 4. [...] 4.4 Target-Website Terms of Service. You are responsible for compliance with the terms of service, terms of use, and other policies of each Target Website. [...] 6.6 Prohibited Activities. You shall not use the Site or Service to: [...] (b) collect, save, transmit, or access content that violates applicable law, including content that (i) infringes copyright or other intellectual property rights, (ii) breaches laws against hate speech, discrimination, violence, invasion of privacy, gambling, drug distribution, or similar harms, or (iii) violates competition law; [...] (i) generate fraudulent impressions, clicks, or engagements, including ad fraud, SEO manipulation, fake reviews, fake engagement, ticket-scalping bots, sneaker bots, sweepstakes or survey-reward farming, or any automated revenue generation by deceptive means; [...] (l) scrape data for use in harassment, doxxing, stalking, or intimate-partner surveillance.","plan":"Startup","who":"anyone 18 or older","billing":"monthly","charged":null,"topUp":null,"pay":249,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":3000000,"unit":"credit","renews":"month","expires":"end of the billing period","costUnits":1,"calls":3000000,"monthlyCap":null,"perThousand":0.083,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Search Results (SERP)","Structured Data","Ask Questions About a Page","Extract Structured Fields","Get Page Text","Get Selected HTML","Get Multiple Selected Areas"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":50,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Get Page HTML, datacenter proxy, no JS rendering","method":"GET","path":"/html","send":"url, js \"false\", proxy \"datacenter\"; headers, timeout, js_timeout, wait_for, country, custom_proxy, device, error_on_404, error_on_redirect, js_script, return_script_result","fields":["page HTML"]},{"provider":"ZenRows","api":"Web scraping","website":"https://www.zenrows.com","pricingPage":"https://www.zenrows.com/pricing","pitch":"Zenrows Fetch (formerly, Universal Scraper API) is a versatile tool designed to simplify and enhance the process of extracting data from websites. Whether you're dealing with static or dynamic content, our API provides a range of features to meet your scraping needs efficiently.","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"The Client acknowledges and agrees to use the Services for its own use and will comply with the restrictions set out in this section. [...] The Client, with respect to the Services [...] shall not (including encouraging, facilitating, or causing any other party to do so) do any of the following: Use the Services for unlawful purposes or in a manner that violates the law, morality, good faith, or public order; Use the Services in a manner that breaches these Terms of Service or applicable regulations; Use the Services to gain an undue advantage, including any unlawful activities such as accessing government websites to obtain appointments, collecting data from third parties, or gathering information from websites for any unlawful, abusive, or misleading purposes, or in a manner inconsistent with good faith or generally accepted practices; Copy/reproduce, lend, sell, rent, sublicense, broadcast, distribute, edit, transfer to third parties, as well as adapt the Services or any part thereof in any way; [...] Otherwise, use the Service in violation of copyright or other laws. [...] IT IS STRICTLY PROHIBITED TO COLLECT DATA OR URLS FROM THIRD-PARTY WEBSITES FOR PURPOSES THAT ARE UNLAWFUL, ABUSIVE OR IN CONTRAVENTION OF THE LAW, GOOD FAITH AND GENERALLY ACCEPTED CUSTOMS AND PRACTICES.","plan":"Growth G2","who":"anyone of legal age (18) with the legal capacity to contract","billing":"monthly","charged":null,"topUp":null,"pay":279,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":2000000,"unit":"credit","renews":"month","expires":"at every renewal","costUnits":1,"calls":2000000,"monthlyCap":null,"perThousand":0.1395,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0.1395,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Extract","Crawl","Batch","Browser Sessions","LinkedIn profile scraper","LinkedIn company scraper","LinkedIn post scraper","LinkedIn jobs scraper","Google Search scraper","Google Images scraper","Google Scholar scraper","Google News scraper","Google Shopping scraper","Google Maps scraper","Bing scraper"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":100,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Fetch a page","method":"GET","path":"/v1/","send":"url; custom_headers, session_id, original_status, allowed_status_codes, block_resources, response_type","fields":["page HTML","page markdown","page text","final URL"]},{"provider":"Zenscrape","api":"Web scraping","website":"https://zenscrape.com","pricingPage":"https://zenscrape.com/#pricingSection","pitch":"Web scraping without the hassle","strengths":[],"aggregators":null,"freshness":"live","fieldFreshness":null,"history":null,"countries":null,"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no API terms","use":"no API terms","plan":"Professional","who":"anyone","billing":"monthly","charged":null,"topUp":null,"pay":349.99,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":5000000,"unit":"credit","renews":"month","expires":null,"costUnits":1,"calls":5000000,"monthlyCap":null,"perThousand":0.07,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":100,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Web Scraping API","method":"GET","path":"/api/v1/get","send":"url, premium false, render false; location, keep_headers","fields":["page HTML"]}],"total":1014,"checked":["2026-10-28","2026-10-29"],"freshness":["Live","Within an hour","Within a day","Within a week","Within a month","Within a year","Stored, age unknown"],"providers":[{"label":"B to K","kids":[{"label":"Bright Data","value":"Bright Data on its own site"},{"label":"CrawlForge","value":"CrawlForge on its own site"},{"label":"Decodo","value":"Decodo on its own site"},{"label":"fastCRW","value":"fastCRW on its own site"},{"label":"Geekflare","value":"Geekflare on its own site"},{"label":"HasData","value":"HasData on its own site"},{"label":"Hyperbrowser","value":"Hyperbrowser on its own site"},{"label":"Irmu","value":"Irmu on its own site"},{"label":"Kimi","value":"Kimi on its own site"}],"range":true},{"label":"M to Scrape","kids":[{"label":"MrScraper","value":"MrScraper on its own site"},{"label":"Olostep","value":"Olostep on its own site"},{"label":"OpenWeb Ninja","value":"OpenWeb Ninja on its own site"},{"label":"Oxylabs","value":"Oxylabs on its own site"},{"label":"ScrapeGraphAI","value":"ScrapeGraphAI on its own site"},{"label":"Scrapeless","value":"Scrapeless on its own site"},{"label":"ScrapeOwl","value":"ScrapeOwl on its own site"},{"label":"ScraperAPI","value":"ScraperAPI on its own site"},{"label":"Scrapestack","value":"Scrapestack on its own site"}],"range":true},{"label":"Scrapi to Z","kids":[{"label":"ScrapingAnt","value":"ScrapingAnt on its own site"},{"label":"ScrapingBee","value":"ScrapingBee on its own site"},{"label":"Scrappa","value":"Scrappa on its own site"},{"label":"Social Fetch","value":"Social Fetch on its own site"},{"label":"StealthASF","value":"StealthASF on its own site"},{"label":"WebcrawlerAPI","value":"WebcrawlerAPI on its own site"},{"label":"WebScraping.AI","value":"WebScraping.AI on its own site"},{"label":"ZenRows","value":"ZenRows on its own site"},{"label":"Zenscrape","value":"Zenscrape on its own site"}],"range":true}],"at":[2,25,62,82,111,138,187,231,237,246,262,273,287,319,332,366,426,552,600,683,721,740,775,782,827,898,1006],"fields":{"Web scraping":["page HTML","page markdown","status code","page text","response headers","screenshot","cookies","extracted data","page links","page title","request ID","URL","credits used","credits charged","description","final URL","HTML","page content","page metadata","content type","created at","credit cost","iframes","Markdown","page emails","page images","request status","scrape ID","status","success","timestamp","warning","XHR requests","API version","audio","billed","bytes transferred","change tracking","character count","contact company name","contact emails","contact forms","contact locations","contact phones","contact social profiles","content chunks","content file URL","cost in dollars","credits available","credits balance","credits consumed","credits remaining","device","discovered API","engine used","external links","extracted keywords","favicon","fields found","fields missing","formatting preserved","hosted HTML URL","hosted markdown URL","hosted text URL","HTTP status","images","initial status code","internal links","job ID","keywords","languages detected","links preserved","location","lookup status","metadata","output format","page branding","page content length","page cookies","page headers","page phone numbers","page status code","processing time","processing time in ms","product brand","product category","product description","product rating","product rating scale","product review count","product title","product URL","product variants","proxy transfer in MB","proxy used","raw HTML","raw response body","render decision","request parameters","resolved URL","response code","response type","retry count","runtime","scrape parameters","screenshot URL","selector used","social links","source URL","step records","stored HTML URL","stored JSON URL","task ID","test ID","truncated","updated at","variant availability","variant currency","variant images","variant price","variant SKU","videos","word count"]},"same":["api","strengths","aggregators","waterfall","resultsCap","startPerCall","monthlyFee","addons","catchAllPerThousand","bounceRefund","history","countries","fullFamilyTree","checks","searchesIn","perDay","batch"],"facets":["defaults","provider","price","fields","billing","who","freshness","use","answer","paysFor"],"ties":{"Web scraping":{"tied":["Bright Data, top-up","Bright Data, top-up, Pay as you go","CrawlForge, $399 monthly","CrawlForge, $399 monthly, Business","Decodo, $499 monthly","Decodo, $499 monthly, $499","Decodo, $499 monthly, $499, POST /v1/scrape","Geekflare, $349 monthly","Geekflare, $349 monthly, Business","Geekflare, $349 monthly, Business, POST /webscraping","Geekflare, $349 monthly, Business, POST /webscraping, 1,000,000 credits a month","HasData, $249 monthly","HasData, $249 monthly, Growth 3M","HasData, $249 monthly, Growth 3M, POST /scrape/web","HasData, $249 monthly, Growth 3M, POST /scrape/web, 3,000,000 credits a month","Hyperbrowser, $30 monthly","Hyperbrowser, $30 monthly, Startup","Hyperbrowser, $30 monthly, Startup, POST /api/web/fetch","Hyperbrowser, $30 monthly, Startup, POST /api/web/fetch, 30,000 credits a month","Irmu, $200 monthly","Irmu, $200 monthly, Pro","Irmu, $200 monthly, Pro, GET /crawl","Irmu, $200 monthly, Pro, GET /crawl, 3,000,000 credits a month","MrScraper, pay as you go","OpenWeb Ninja, $150 monthly","OpenWeb Ninja, $150 monthly, Mega","OpenWeb Ninja, $150 monthly, Mega, POST /request","OpenWeb Ninja, $150 monthly, Mega, POST /request, 1,000,000 requests a month","Oxylabs, $500 monthly","Oxylabs, $500 monthly, Flexible","Oxylabs, $500 monthly, Flexible, POST /v1/scrape","Oxylabs, $500 monthly, Flexible, POST /v1/scrape, $500 a month","ScrapeGraphAI, $500 monthly","ScrapeGraphAI, $500 monthly, Pro Plan","ScrapeGraphAI, $500 monthly, Pro Plan, POST /api/scrape","ScrapeGraphAI, $500 monthly, Pro Plan, POST /api/scrape, 750,000 credits a month","ScrapeOwl, $249 monthly","ScrapeOwl, $249 monthly, Business","ScrapeOwl, $249 monthly, Business, POST /v1/scrape","ScrapeOwl, $249 monthly, Business, POST /v1/scrape, 3,000,000 credits a month","Scrapeless, $49 monthly","Scrapeless, $49 monthly, Growth","Scrapeless, $49 monthly, Growth, POST /api/v2/unlocker/request","Scrapeless, $49 monthly, Growth, POST /api/v2/unlocker/request, $49 a month","ScraperAPI, $475 monthly","ScraperAPI, $475 monthly, Scaling","ScraperAPI, $475 monthly, Scaling, GET /","ScraperAPI, $475 monthly, Scaling, GET /, 5,000,000 credits a month","Scrapestack, $79.99 monthly","Scrapestack, $79.99 monthly, Professional","Scrapestack, $79.99 monthly, Professional, GET /scrape","Scrapestack, $79.99 monthly, Professional, GET /scrape, 1,000,000 requests a month","ScrapingAnt, $49 monthly","ScrapingAnt, $49 monthly, Startup","ScrapingAnt, $49 monthly, Startup, GET /v2/extended","ScrapingAnt, $49 monthly, Startup, GET /v2/extended, 500,000 credits a month","ScrapingBee, $249 monthly","ScrapingBee, $249 monthly, Business","ScrapingBee, $249 monthly, Business, GET /api/v1/","ScrapingBee, $249 monthly, Business, GET /api/v1/, 3,000,000 credits a month","Social Fetch, $29 monthly","Social Fetch, $29 monthly, Starter","StealthASF, $49 monthly","StealthASF, $49 monthly, Pro","StealthASF, $49 monthly, Pro, POST /v1/scrape","StealthASF, $49 monthly, Pro, POST /v1/scrape, 250,000 credits a month","WebScraping.AI, $249 monthly","WebScraping.AI, $249 monthly, Startup","WebScraping.AI, $249 monthly, Startup, GET /html","WebScraping.AI, $249 monthly, Startup, GET /html, 3,000,000 credits a month","ZenRows, $279 monthly","ZenRows, $279 monthly, Growth G2","ZenRows, $279 monthly, Growth G2, GET /v1/","ZenRows, $279 monthly, Growth G2, GET /v1/, 2,000,000 credits a month","Zenscrape, $349.99 monthly","Zenscrape, $349.99 monthly, Professional","Zenscrape, $349.99 monthly, Professional, GET /api/v1/get","Zenscrape, $349.99 monthly, Professional, GET /api/v1/get, 5,000,000 credits a month"],"movedPages":{},"canonicals":{"Bright Data":"free-tier-post-request","CrawlForge\nPOST /tools/extract_text":"free-post-tools-extract-text","CrawlForge":"free-post-tools-extract-content","Decodo":"free-post-v1-scrape-5000-requests-a-month","fastCRW":"free","Geekflare":"free-post-webscraping-web-scraping","HasData":"free-post-scrape-web-web-scraping-api","Hyperbrowser":"free-post-api-web-fetch-fetch","Irmu\nGET /crawl\nStandard fetch":"free-get-crawl-standard-fetch","Irmu":"free-get-crawl-premium-fetch","Kimi":"top-up-from-1","MrScraper":"free-scraper-free-post","Olostep":"free","OpenWeb Ninja":"free-post-request-web-unblocker","Oxylabs":"free-welcome-credits-post-v1-scrape-scrape","ScrapeGraphAI":"free-plan-post-api-scrape-scrape-html","Scrapeless\nPOST /api/v2/unlocker/request\nWeb Unlocker":"free-basic-post-api-v2-unlocker-request-web-unlocker","Scrapeless":"free-basic-post-api-v2-unlocker-request-js-render","ScrapeOwl\nPOST /v1/scrape\nScrape API, rotating proxies without render_js":"free-post-v1-scrape-scrape-api-rotating-proxies-without-render-js","ScrapeOwl":"free-post-v1-scrape-scrape-api-premium-proxies-with-render-js","ScraperAPI\nGET /\nSync API":"free-plan-get-sync-api","ScraperAPI":"free-plan-post-jobs-async-api","Scrapestack":"free","ScrapingAnt\nGET /v2/extended\nExtended JSON: Simple request (no browser usage) + standard (datacenter) proxy":"free-get-v2-extended-extended-json-simple-request-no-browser-usage-standard-datacenter-proxy","ScrapingAnt":"free-get-v2-extended-extended-json-headless-browser-js-rendering-premium-residential-proxy","ScrapingBee\nGET /api/v1/\nHTML API, without JavaScript rendering":"free-trial-get-api-v1-html-api-without-javascript-rendering","ScrapingBee":"free-trial-get-api-v1-html-api","Scrappa":"free","Social Fetch":"free-get-v1-web-html","StealthASF\nPOST /v1/scrape\nPlain request":"free-post-v1-scrape-plain-request","StealthASF":"free-post-v1-scrape-javascript-rendering","WebcrawlerAPI":"top-up","WebScraping.AI\nGET /html\nGet Page HTML, datacenter proxy, no JS rendering":"free-get-html-get-page-html-datacenter-proxy-no-js-rendering","WebScraping.AI":"free-get-html-get-page-html-datacenter-proxy-js-rendering","ZenRows":"free-agent-storefront-get-v1-fetch-a-page","Zenscrape":"free-get-api-v1-get-web-scraping-api"}}},"shared":[],"notes":{"name":"The sheet's first column gives each row's name. No two rows on the sheet share a name. The name starts with the provider, then the plan's price. Some names: \"API Builderz, $50 monthly\", \"HarvestAPI, $280 pack\", \"Crawlbase, pay as you go\", \"Bright Data, top-up\" (a prepaid balance of any amount), \"AnyAPI, top-up from $10\" (a balance you top up by $10 or more), \"free\" or \"contact us\". Two plans with the same price also get the plan's name. We drop any words in the plan's name that the price already gives. If two rows share a name after that, we add the call's method and path to each name. When two names still match, we add the plan's units. When they still match after that, we add the call's name. The sheet's own CSV and JSON files have no name column. datacircle.json and datacircle.csv have a name column with the same names as the sheets.","api":"This column names each row's API. \"Employee profile\" returns a person's LinkedIn profile, on LinkedIn profiles. \"Cached employee profile\" returns it from the provider's copy of LinkedIn, on Cached LinkedIn profiles, which lists the LinkedIn profile plans whose Freshness says a copy. \"Employee email\" finds a person's work email, on Find email. \"Cached employee email\", on the Find cached email sheet, finds a person's work email in the provider's stored data. \"Email validation\" checks whether an address takes mail, on Validate email. On the Cached email validation sheet, \"Cached email validation\" may answer from data the provider keeps, without asking the mail server. \"Employee phone\" finds a person's phone number, on Find phone. \"Cached employee phone\", on the Find cached phone sheet, finds a person's phone number in the provider's stored data. \"Company profile\" returns a company's LinkedIn page, on LinkedIn company profiles. \"Cached company profile\", on the Cached LinkedIn company profiles sheet, returns a company's LinkedIn page from the provider's copy of LinkedIn. \"Company headcount\" counts a company's staff, on its own sheet. \"Cached company headcount\", on the Cached company headcount sheet, counts a company's staff from the provider's stored data. \"Phone validation\" checks whether a phone number is valid, on Validate phone. \"Cached phone validation\", on the Cached phone validation sheet, checks a phone number against data the provider has stored. \"Post comments\" returns the comments on a LinkedIn post, on LinkedIn post comments. On the Cached LinkedIn post comments sheet, \"Cached post comments\" returns a post's comments from a copy the provider keeps. \"Post reactions\" returns who reacted to a LinkedIn post and how, on LinkedIn post reactions. On the Cached LinkedIn post reactions sheet, \"Cached post reactions\" returns a post's reactions from a copy the provider keeps. \"Employee lookalikes\" returns people similar to the one you send, on Similar people. On the Cached similar people sheet, \"Cached employee lookalikes\" returns similar people from a copy the provider keeps. On the Similar companies sheet, \"Company lookalikes\" returns companies similar to the company you send. On the Cached similar companies sheet, \"Cached company lookalikes\" returns similar companies from a copy the provider keeps. \"Company technologies\" returns the tools a company uses, on its own sheet. \"Cached company technologies\" returns the tools a company uses, from a copy the provider saved earlier. \"Company job count\" counts the jobs a company has open on LinkedIn, on its own sheet. \"Employee posts\" returns a person's LinkedIn posts, on LinkedIn person posts. \"Company posts\" returns a company's LinkedIn posts, on LinkedIn company posts. \"Cached employee posts\" and \"Cached company posts\", on Cached LinkedIn person posts and Cached LinkedIn company posts, return them from the provider's copy of LinkedIn. \"Company funding\" returns a company's funding rounds, on its own sheet. \"Cached company funding\", on the Cached company funding sheet, returns them from the provider's stored data. \"Company jobs\" returns the jobs a company has open, on Company open jobs. On the Cached company open jobs sheet, \"Cached company jobs\" returns a company's open jobs from a copy the provider keeps. \"Employee search\" finds people by job title, company and place, on LinkedIn people search. \"Cached employee search\", on the Cached LinkedIn people search sheet, finds people in the provider's copy of LinkedIn. \"Company search\" finds companies by industry, size and place, on LinkedIn company search. \"Cached company search\" finds companies by industry, size and place in the provider's copy of LinkedIn. It is on the Cached LinkedIn company search sheet. \"Job search\" finds jobs by title, company and place, on LinkedIn job search. \"Cached job search\" finds jobs by title, company and place in a copy of LinkedIn's jobs. It is on the Cached LinkedIn job search sheet. \"Reverse email lookup\" finds the person behind an email, on its own sheet. \"Cached reverse email lookup\" finds who owns an email address in data the provider already holds. It is on the Cached reverse email lookup sheet. \"Post search\" finds posts by keyword, on LinkedIn post search. \"Cached post search\" finds posts by keyword in a copy of LinkedIn posts. It is on the Cached LinkedIn post search sheet. \"Post details\" returns a post from its URL or ID, on LinkedIn post details. On the Cached LinkedIn post details sheet, \"Cached post details\" returns a post from a copy the provider keeps. \"Job details\" returns a job from its URL or ID, on LinkedIn job details. On the Cached LinkedIn job details sheet, \"Cached job details\" returns a job from a copy the provider keeps. \"Employee comments\" returns the comments a person left on posts, on LinkedIn person comments. On the Cached LinkedIn person comments sheet, \"Cached employee comments\" returns a person's comments from a copy the provider keeps. \"Employee reactions\" returns the posts a person reacted to, on LinkedIn person reactions. On the Cached LinkedIn person reactions sheet, \"Cached employee reactions\" returns the posts a person reacted to from a copy the provider keeps. \"Post reposts\" returns the people who reposted a LinkedIn post, on LinkedIn post reposts. \"Employee recommendations\" returns the recommendations on a person's LinkedIn profile, on LinkedIn person recommendations. \"Job lookalikes\" returns jobs similar to the one you send, on Similar jobs. \"Employee articles\" returns a person's LinkedIn articles, on LinkedIn person articles. \"Company enrichment\" returns a company's profile from the provider's own database, on Company enrichment. \"Cached company enrichment\", on the Cached company enrichment sheet, returns a company's profile from the provider's stored data. \"People search\" finds people in the provider's own database. \"Cached people search\", on the Cached people search sheet, finds people in the provider's stored data. \"Company discovery\" finds companies in the provider's own database. \"Cached company discovery\", on the Cached company discovery sheet, finds companies in the provider's stored data. \"Job postings\" finds job postings in the provider's own database. \"Cached job postings\", on the Cached job postings sheet, finds job postings in a copy the provider keeps. \"Job posting details\" returns a job posting from its ID. On the Cached job posting details sheet, \"Cached job posting details\" returns a job posting from a copy the provider keeps. \"Person enrichment\" returns a person's profile. On the Cached person enrichment sheet, \"Cached person enrichment\" returns a person's profile from a copy the provider keeps. \"Leadership changes\" returns the new hires, promotions and departures in a company's senior roles. \"Cached leadership changes\" returns a company's leadership changes from a copy the provider keeps. \"Company hierarchy\" returns a company's parent companies and subsidiaries. \"Cached company hierarchy\" returns the same parent companies and subsidiaries from the provider's stored data. \"Web search\" returns the web pages that match a query. \"Cached web search\" returns the same pages from the provider's own copy of the web. \"SERP\" returns a search engine's results page as data, on SERP. \"Cached SERP\" returns a results page from a copy the provider saved earlier, on the Cached SERP sheet. \"Web scraping\" returns a page's content from its URL. \"Cached web scraping\" returns a page's content from a copy the provider saved earlier. The \"X profile\" API returns an X (Twitter) account's profile from the account's handle. \"X posts\" returns an X account's posts. \"Instagram profile\" returns an Instagram account's profile. \"Instagram posts\" returns an Instagram account's posts. \"TikTok profile\" returns a TikTok account's profile. \"TikTok videos\" returns a TikTok account's videos. \"YouTube channel\" returns a YouTube channel's name, subscribers and description. \"YouTube channel videos\" returns a YouTube channel's videos. Pick an API from the GTM APIs list on the left of the sheet. Pick \"All GTM APIs\" in the GTM APIs list to see every API in one sheet. We name each folder in the zip after its API.","score":"We score each plan out of 100 on five parts: price, data, cost to get started, bundled calls and performance. We score data and performance from our benchmark of the provider's call. Until we benchmark the call, the plan's data, performance and Overall scores are N/A. The data, performance and Overall scores are also N/A on a plan that lacks a check or feature the benchmarked plan has. A plan whose data score is 0 has an Overall score of 0, whatever its other scores. Each API's sheet shows what we measured on each benchmarked plan, in the columns after its price. We rank a plan's price per 1,000 against the price per 1,000 of its API's other scored plans. We score cost to get started and bundled calls on the plan alone. We give N/A to yearly and contact us plans, plans over $500 to start, plans bought on a marketplace and plans that need your own LinkedIn account. A free plan gets N/A unless it has no limit and the provider has no paid plan for that call. Then we score it. Click Score in the sheet's bar to set the five weights. The JSON, datacircle.json and datacircle.csv give each plan's score at the default weights. A plan with N/A has an empty score in the JSON, datacircle.json and datacircle.csv. The sheet's CSV has no scores.","Price score":"The plan's price score out of 100. We rank the plan's $ per 1,000 against the $ per 1,000 of the other scored plans of its API. We also count the cost of a call that finds nothing. Some plans give no $ per 1,000. For those plans, when each call returns one result, we use the price our benchmark paid per call. We scale that price by what a credit costs on the plan. We skip our benchmark's price for a plan if another paid plan for the same call lists its own $ per 1,000. Plans for one call can each charge a different price per call. On the sheet, click or tap the score to see how we worked it out.","Data score":"The plan's data score out of 100, from our benchmark of its provider's call. On some APIs, it measures how complete the call's answer is. On others, it measures how often the answer is right. We then lower the score to the lowest score we are 95% sure the call earns. We lower the score more when we test the call on fewer inputs. Until we benchmark the call, the score is N/A, and so is the Overall score. The Data score and Overall score are also N/A on a plan that lacks a check or feature the benchmarked plan has. On the sheet, click or tap the score to see how we scored it. Each API's sheet shows what we measured on each benchmarked plan, in the columns after its price.","Cost to get started score":"The plan's score out of 100 for getting your first result: who can get it, how you pay, and the least you pay before it. On the sheet, click or tap the score to see why.","Bundle score":"The plan's score out of 100 for the other calls its price gets you, as its pages list them under Also pays for. On the sheet, click or tap the score to see why.","Performance score":"The plan's performance score out of 100, from our benchmark of its provider's call. We divide the fastest benchmarked provider's median time by this provider's median time. A median under 0.1 s counts as 0.1 s, since the baseline we take off varies by about that much. The Performance score and the Overall score are N/A until we benchmark the call. The Performance score and the Overall score are also N/A on a plan that lacks a check or feature that the benchmarked plan has. If the call gave no answer we could time, the Performance score is N/A and the Overall score counts Performance as 0. If we timed no other call in the same benchmark, the Performance score is N/A and the Overall score leaves Performance out. On the sheet, click or tap the score to see how we scored it. Each API's sheet shows what we measured on each benchmarked plan, in the columns after its price.","perThousand":"The price of 1,000 pages on this plan, in dollars. It is 0 on a free plan. On a plan that charges by the call, each call asks for one page. We add the Start fee to each page's price. On a plan that charges by the page, we divide 1,000 by the most results one page holds. We round that up to whole pages and add up what the pages cost. We leave it blank when the provider doesn't say how many results a page holds. On a flat fee, we take the most pages the plan allows in one month and multiply by the number of months the fee covers. We divide the fee by that total. Then we multiply by 1,000. We leave it blank when the provider doesn't say how many pages the plan allows. On a flat fee with no cap on pages, the sheet shows \"no limit\", and the CSV and JSON leave it blank. On a waterfall's paid plan, we show the average cost of a call. We take the price of each provider listed under Waterfall. We weight each price by how often a call reaches that provider. We leave it blank when the waterfall doesn't list a hit rate or a page size for a provider a call can reach. On a plan with a Monthly fee, we first subtract one month of the fee from the plan's units. Then we divide the plan's price by the number of pages the remaining units buy. Then we multiply by 1,000. We leave it blank when the Monthly fee uses up all the plan's units. Some plans limit calls per day or per month. If the limit allows fewer pages than the units pay for, we divide the plan's price by the pages the limit allows. Then we multiply by 1,000. We leave it blank on a top-up, because a top-up buys no fixed number of pages. We also leave it blank when the provider's website doesn't say what a page costs on this plan, or how many pages the plan's price buys.","per":"The price counts a \"call\" or a \"result\". A call asks for one page. A result is each web page a call returns. Some calls return a page of results: a post's comments, reactions or reposts, a person's or company's posts, an account's posts or videos, a channel's videos, a person's articles, comments or reactions, a company's open jobs, the people, companies, jobs or posts a search finds, or people, companies or jobs similar to the one you send. \"result\" means you pay for each result on the page. \"page of 50\" counts each page, and you pay for a whole page even when it holds fewer than 50. In the JSON, resultsPerPage is the most results a page holds. resultsPerPage is null when the price isn't per page or the provider doesn't say the page size. \"page, size not stated\" means the provider doesn't say how many results a page holds.","billing":"How you pay: \"free\", \"on-demand\" (you pay for what you use, with nothing to buy first), \"one-time\" (a pack or a top-up you pay for first, then use), \"contact\" (no public price: you ask the provider for one), or a subscription: \"monthly\", \"quarterly\" (every three months), \"half-yearly\" (every six months) or \"yearly\". The sheet shows \"one-time\" as \"pay first\" and \"on-demand\" as \"pay as you go\".","perMonth":"On a subscription: its price for one month in dollars, its Pay divided by the months it buys (termMonths), 12 on most yearly plans. We work it out for the sheet, to the cent. We leave it out of the sheet's CSV and JSON, and datacircle.json and datacircle.csv have it. Blank (null) on every other plan.","notFoundPerThousand":"Dollars for 1,000 pages the provider can't fetch. 0 when the provider charges nothing for them, as on free plans. On a waterfall, the cost of a call when no provider finds the answer: the sum of the prices of the providers that charge for a miss.","strengths":"The plan's strengths, which we work out from its row: each one is a band that many plans of its API are in. Each API has its own strengths, listed and explained under Strengths on datacircle.dev/fields, and Validate email, Find phone, Validate phone, LinkedIn company profiles, Company headcount, LinkedIn post comments, LinkedIn post reactions, Similar people, Similar companies, Company technologies, Company job count, LinkedIn person posts, LinkedIn company posts, Company funding, Company open jobs, LinkedIn people search, LinkedIn company search, LinkedIn job search, Reverse email lookup, LinkedIn post search, LinkedIn post details, LinkedIn job details, LinkedIn person comments, LinkedIn person reactions, LinkedIn post reposts, LinkedIn person recommendations, Similar jobs, LinkedIn person articles, Company enrichment, People search, Company discovery, Job postings, Job posting details, Person enrichment, Leadership changes, Company hierarchy, Web search, SERP, Web scraping, X profiles, X posts, Instagram profiles, Instagram posts, TikTok profiles, TikTok videos, YouTube channels and YouTube channel videos have none yet. Cached LinkedIn profiles and Find cached email have the strengths of LinkedIn profiles and Find email, but never \"read live\" or \"found live\". The other cached sheets have none yet. Blank ([] in the JSON) when the plan has none, and we leave Strengths off its page. Under Filters, you see only the rows with every strength you tick.","aggregators":"Aggregators like treg and Deepline sell the row's call. With one aggregator account, you reach many providers. Each cell says what a call costs through the aggregator with your own provider key. It also says what 1,000 pages cost when you pay the aggregator and have no account at the provider: \"treg: your key free, paid $1.50\". We add \"per 1,000 results\" when the aggregator charges per result it finds, and say \"paid, no fixed price\" when the aggregator publishes no price. For an aggregator that charges by the page, we take the largest page size and price the full pages you need for 1,000 results. We write \"paid, page size not stated\" when the aggregator doesn't say how many results a page holds. We write \"listed, how it's sold not stated\" when the aggregator lists the call but doesn't say if you pay the aggregator or use your own key. When the aggregator sells one of the provider's calls without saying which, the cell ends with \"this call or another\", the provider's name and \"call\": \"this call or another Pubrio call\". A cell says \"none\" when no aggregator we checked for the row's API sells the call. A blank cell (null in the JSON) means we haven't checked any aggregator for that API. We skip calls an aggregator doesn't list. In the JSON, each aggregator has these keys. aggregator is its name. url is its page for the call. ownKey is what a call costs there with your own key, or null when you can't use yours. paid is true when you can pay the aggregator. paid and ownKey are both null when the aggregator doesn't say how it sells the call. callStated is false when the aggregator sells this call or another of the provider's and doesn't say which. usd is its price in dollars for one per, or null when it sets no price. perThousand is its price in dollars for 1,000. per is \"call\", \"result\" or \"page\". resultsPerPage is the most results a page holds, or null.","waterfall":"Some routers, like treg's, try one provider after another until one finds the answer. On a router's call, the Waterfall column lists each provider the router tries, in order. Each provider shows the router's name for its call in brackets. Then we give the provider's price per 1,000 on this plan and how often the provider finds the answer. We add \"misses billed\" when the provider charges for a miss. For a provider that charges by the page, we count the full pages that hold 1,000 results at the largest page size, and we write \"page size not stated\" when the provider doesn't say how many results a page holds. The router publishes how often each provider finds an answer over all its calls. We assume each provider finds answers at that same rate on the calls the earlier providers miss. We leave the Waterfall column blank on calls with a single provider. In the JSON, each step has these keys. provider is the provider's name. call is the provider's call, which you can also make on its own. perThousand, per and resultsPerPage mean the same as on a plan's row. hitRate is from 0 to 1, or null when the router gives none. missesBilled is true when the provider charges for a miss.","repeatFree":"On a call that costs units: how long you can get a page again free on this plan after you pay for it. On a flat fee with a daily or monthly limit: how long you can get a page again without using up the limit after you first get the page. We copy it from the provider's pages, like \"20 minutes\". \"no limit\" means the provider never charges again for a page you paid for once. \"never\" means the provider says it charges each time you get the page again. Blank when the provider's pages don't say.","resultsCap":"For a search API, the most results you can get from one search on this plan, however many pages you ask for. \"no limit\" when the provider says you can get every match. Blank (null in the JSON) when the provider's docs don't say, or when the API isn't a search.","startPerCall":"A fee in dollars you pay once for each call, on top of the price per page, like an Apify Actor's start fee. You pay the same fee for a call of 1,000 pages or a call of one page. On a plan that charges by the call, each call asks for one page. On that plan, the $ per 1,000, List $ per 1,000, Overage and Enough for columns all count the Start fee. On a plan that charges by the result or the page, a call can return any number of results. On those plans, the $ per 1,000, List $ per 1,000, Overage and Enough for columns leave the Start fee out. It is $0.00 on a free plan. It is blank when the plan has no start fee. A provider's page can give a range, like \"2-3 credits\". startPerCall then holds the lowest fee and startPerCallMax holds the highest. The sheet and the CSV show \"$0.04 to $0.06\". startPerCallMax is blank on a plan with one start fee or none.","monthlyFee":"A monthly fee the call needs. The provider takes it from the plan's units. For example, RouterGrowth charges $9.625 a month for each LinkedIn account you connect. monthlyFee is the fee in dollars. monthlyFeePer is what one fee pays for, like \"LinkedIn account\". The Enough for and $ per 1,000 columns count what is left after one month of the fee. Blank (null in the JSON) when the call has no monthly fee.","extras":"Fields that cost more than the row's price. Each group of extra fields lists its fields and its perThousand: the price you pay on top of the row's price. Some providers charge for each search and also for the extra fields on each result. For those providers, perThousand is the price for 1,000 searches. We assume each search returns the most results the plan allows.","Also pays for":"The other calls you get for the plan's price. Each has its own limit. We use the provider's words. When a plan pays for more than 40 other calls, we write their count instead, like \"300 other calls\". We leave out apps, extensions, MCP servers, proxies and storage, since they are not calls. We also leave out features you can use only in the provider's app, like sending its email campaigns. For example, gtm-api.com's account price also buys 100 searches, 50 messages and 25 connection requests a day. \"nothing\" when you get only the row's call. The row's $ per 1,000 is for that call alone, since providers don't say how to split their price. Blank (null in the JSON) until we read the provider's plan. Also blank on a \"contact\" plan whose pages don't say what its price buys.","overagePerThousand":"On a subscription: dollars for each 1,000 pages you get past the plan's units, when the provider sells extra pages. On a plan that charges by the call, Overage includes the Start fee.","unitsCap":"\"hard\" means calls stop once the plan's units run out. \"soft\" means calls go on after the plan's units run out. Those calls cost the Overage price when the provider gives one. Blank (null in the JSON) when the provider's pages don't say.","addons":"On an email API's subscription: the packs of units the provider sells on top of the plan, as its pricing page lists them. Each has its units, its pay in the plan's currency, when it renews (\"month\" or \"year\" when you pay for it again with the plan, \"never\" when you buy it once), and its perThousand, dollars for 1,000 emails at its price. The sheet's CSV says \"500 credits a month for $10 ($20.00 per 1,000)\". An empty list when the provider sells none. Blank (null) on every other plan.","catchAllPerThousand":"On an email API: dollars for 1,000 calls that return an address at a catch-all domain. Such a domain takes mail for any address, so you can't check whether the person's mailbox exists, and the email may bounce. 0 when they cost nothing, or when the provider returns no such address. The same as the row's $ per 1,000 when the provider charges for any address it finds. Blank when its pages don't say.","bounceRefund":"On an email API: the credit or refund the provider gives when an address it charged you for bounces, and the conditions, in its pages' words, like \"the credit, reported from the dashboard or the API and reviewed\". \"never\" when its pages say a bounced address stays charged. Blank when they don't say.","pitch":"How the provider sells the row's call, quoted from the call's own page, or the provider's own pitch when one page covers all its calls. \"[...]\" marks a cut.","freshness":"How old the answer may be, from the provider's pages. \"live\": the provider gets the data at the moment you call. It reads LinkedIn, the company's website, its job board, search results or the page you send. Or it finds or checks the email or phone number. A plan is \"live\" too when the provider keeps each answer for an hour or less and gives it again to anyone who asks the same question in that time. Renidly keeps each answer for 20 minutes. \"1 month\" or \"30 days\": the provider answers from a copy it refreshes that often. \"as of 2025-11-13\": from a copy last refreshed that day. \"stored\": from a copy the provider's pages don't date. We also mark an email or phone check \"stored\" when it reads only the format, the domain's DNS and the provider's own lists. That check never asks the mail server or the carrier. We leave it blank (null in the JSON) when the provider's pages don't say how fresh the answer is, or don't agree with each other. We put a plan on the cached sheet of its API when the plan's Freshness says the provider answers from a copy. The cached sheets are Cached LinkedIn profiles, Find cached email, Cached LinkedIn company profiles, Cached company headcount, Cached company enrichment, Cached people search, Cached company discovery, Cached company funding, Cached email validation, Cached LinkedIn people search, Find cached phone, Cached reverse email lookup, Cached LinkedIn job search, Cached LinkedIn company search, Cached LinkedIn post search, Cached company technologies, Cached phone validation, Cached LinkedIn person posts, Cached LinkedIn company posts, Cached job postings, Cached leadership changes, Cached person enrichment, Cached similar people, Cached similar companies, Cached company open jobs, Cached LinkedIn person comments, Cached job posting details, Cached company hierarchy, Cached LinkedIn job details, Cached LinkedIn post details, Cached LinkedIn post comments, Cached LinkedIn post reactions, Cached LinkedIn person reactions, Cached web search, Cached SERP and Cached web scraping. We put every other plan on its API's own sheet. In brackets, we list the fields whose freshness differs on the provider's pages. fieldFreshness gives each of them its own freshness. Bright Data's LinkedIn profile is \"live (current title, jobs, schools: as of 2025-11-13)\", since LinkedIn put those three behind its login wall and Bright Data serves them from its cache.","history":"How far back the answers reach, on an API whose answers are dated, such as a company's funding rounds or its open jobs. \"since 2016\": back to 2016. \"open only\": only what is open now. \"the last 7 days\": a window that ends today. \"no limit\": every one ever. \", closed only\" after it: the closed ones alone. Blank (null in the JSON) when the provider's pages don't say, or when the answers aren't dated.","countries":"On Validate phone and Cached phone validation, the countries whose numbers the call checks, like \"United States\". We take them from the provider's pages. \"Worldwide\": the call checks numbers from any country, or from over 100 countries. Blank (null in the JSON) until we read the countries on the provider's pages. Also blank when the provider's pages don't list the countries. Always blank on every other API.","fullFamilyTree":"On Company hierarchy and Cached company hierarchy, this column says if one call gives the whole family tree. The whole tree runs from the top parent down each branch. \"yes\" (true in the JSON): one call gives the whole tree, counting every page of results it returns. \"no\" (false): one call gives part of the tree, like the parents or one level of subsidiaries. You call again for each company to get the rest. The column is blank (null in the JSON) until we read the provider's website. It is blank when the provider's website doesn't say. Always blank on every other API.","checks":"This column lists the checks each call makes, as the provider's pages describe them. You find it on the Validate email, Cached email validation, Validate phone and Cached phone validation sheets. On the Find email sheet, this column lists the checks a finder makes on an address before giving you the address. A finder that asks the mail server takes longer than a finder that doesn't. On an email, \"format\": the address is well formed. \"mail servers\": the domain has servers that take mail. \"disposable domains\": the call spots a domain on a list of throwaway domains. \"role addresses\": the call spots a shared address, like sales@. \"mailbox\": the call checks with the mail server that the mailbox exists. On a number, \"numbering plan\": the number fits the rules of its country. \"carrier\": the call finds the carrier the number is with today. If the owner moved the number to a new carrier, you see the new carrier. \"line in service\": the call checks with the network that the line is live. \"messaging apps\": the call checks with a messaging app, like WhatsApp, that the number has an account there. A call without \"mailbox\" doesn't check the mailbox. It can pass an address that bounces. The column is blank (null in the JSON) until we read the provider's pages. Also blank when the provider's pages don't say. Always blank on every other API.","searchesIn":"This column says where the call looks for posts. We read where the call looks on the provider's pages. You find this column on the LinkedIn post search and Cached LinkedIn post search sheets. \"LinkedIn's search\": the call runs LinkedIn's own search. \"Google's index\": the call searches Google for LinkedIn posts. Google sets how many posts the call can find. New posts show up only after Google indexes them. \"a search engine's index\": the call searches another search engine for LinkedIn posts. We also mark a call \"a search engine's index\" when the provider's pages don't name the search engine. \"the provider's own database\": the call searches a copy of LinkedIn posts the provider keeps. We leave the column blank (null in the JSON) when the provider's pages don't say. We leave the column blank for every other API.","keep":"How long the provider's terms let you keep its API's answers. \"no limit\" when they set none. \"no API terms\" when the provider has no API terms.","use":"What the provider's terms let you use its API's answers for, and what they ask in return, like a link back or a credit. \"any\" when they limit nothing and ask nothing. \"no API terms\" when the provider has no API terms.","pay":"The plan's price, in its currency. On a subscription, the price covers the months in termMonths. In the sheet's CSV, we write the months after the price: \"$39.00/month\", \"€99.00/month\" on a plan in euros, or \"$468.00/15 months\" on gtm-api.com's yearly plan. A pack's Pay is its price. A top-up's Pay is the smallest amount you can top up. On a top-up with no minimum from the provider, Pay is blank (null in the JSON). A free plan's Pay is $0.00. On a usage tier, Pay is what you pay each month for your calls below that tier. Each of those calls costs the price of its own tier. Some tiers have a minimum. If your calls below the tier cost less than the minimum, you pay the minimum. When a usage tier sits on a subscription, you also pay the plan's price. Crawlbase has a tier for the next 10M requests. On that tier, Pay is $583: what you pay each month for your calls below it. On Mailgun's Foundation plan, you pay $95 a month for up to 5,000 validations: the $35 plan plus $60 for the validations. On a pay-as-you-go plan, the sheet's Pay column shows Charged.","units":"What the plan gives for its price, counted in unit. On a usage tier, where the tier starts: \"from the 51st call a month\".","calls":"The number of pages you get for the plan's price, counted in per. On a plan that charges by the page, calls and monthlyCap count pages. calls is the number of pages the plan's units pay for: \"100 calls, once\" for a free trial, \"1,250 results a month\" for an allowance. On a plan that charges by the call, we divide the plan's units by the price of one call plus its Start fee to get calls. On a plan that limits calls per day or per month, calls is the most calls the limit allows before the units renew. The limit counts each call as one page. On a plan that charges by the page, the limit counts each call as one page. Say a plan allows 10,000 requests a month and 200 calls a day. You get 6,000 calls a month, because 30 days of 200 calls is 6,000. Some providers count each result toward the limit. A list you send in one call counts one result for each row. When a provider counts results, limitsCountedIn says \"result\", and calls and monthlyCap count results. A limit of 2,000 results a day allows 60,000 results in a month of 30 days. We fill monthlyCap when a call costs 0 units, like a call on a flat fee. monthlyCap is the most pages you get a month, or \"no limit\". On a plan that limits calls per day or per month, monthlyCap is the most calls the limit allows in 30 days: 90,000 for 3,000 calls a day. The Enough for column shows 3,000 calls a day as \"90,000 calls a month\". On a free trial shorter than 30 days, monthlyCap is the most calls you get over the whole trial. The trial's calls never renew. A 7-day trial with 1,000 calls a day shows as \"7,000 calls, once\". Enough for shows calls, or monthlyCap when a row has no calls. On a plan with a Monthly fee, calls is the number of calls left after the provider takes one month's fee from the plan's units. We count the calls again each time the provider refills the plan's units. Enough for says \"0 calls left after the monthly fee\" when the fee uses up all the plan's units. Enough for is blank when the provider doesn't say how many pages you get. Enough for is also blank on pay as you go plans, on top-ups, on subscriptions that charge for each page on top of the fee, and when a waterfall's average call costs nothing. calls and monthlyCap are null when Enough for is blank.","expires":"When the units you don't use lapse, in the provider's words: \"never\", \"365 days\", \"at renewal: unused credits do not carry over\". Blank when its pages don't say.","perDay":"The most calls a day. Some providers count each result of a call instead, like each row of a list. limitsCountedIn says what the provider counts: \"call\", \"result\" or \"page\". The provider counts the same unit for this column and for the plan's monthly limit. limitsCountedIn says \"call\" when the provider's docs don't say.","perSecond":"The most calls a second you can keep up. When the provider counts a limit over a longer window, we divide it: a limit per minute by 60, per 5 minutes by 300, per hour by 3,600. When it sets several, we show the tightest: 25 a second and 40 a minute is 0.67. We round it to two decimals, and a rate under 0.1 to two digits past its zeros: 5 an hour is 0.0014.","concurrent":"The most calls running at once, or \"no limit\". \"n/a\" when the provider sets no cap on calls at once but limits them by the second: its \"Per second\" limits you. Blank (null) when the provider's pages don't say.","batch":"The most page URLs one call takes on this plan. 1 when it takes one at a time. \"no limit\" when the provider says a call takes any number. Blank (null) when a call takes a list and the provider's pages don't say how many. A call that refuses fewer than a set number shows the fewest and the most, like \"2,000 to 2,000,000\". A call that needs at least 2,000 and has no top limit shows \"2,000 or more\". A call that needs at least 2,000 shows \"at least 2,000\" when the provider's pages don't give the top limit.","answer":"The way you get the call's answer. \"in the call\" when the call's response holds the answer. \"by polling or webhook\" when the call returns a job. Once the job is done, you get the answer from another call or at your webhook. \"in the call or by polling\" when the call returns the answer if it is ready in time. If it isn't ready, the call returns a job you check later. An Apify Actor returns a job when it runs past 5 minutes. \"in the call or by webhook\" when you choose in your request. \"by polling\" when only another call gets the answer. \"by webhook\" when only a URL you give gets the answer. Blank (null) when the provider's pages don't say.","latencyMs":"The median time a call takes. For a benchmarked call, we show our benchmark's median. The API's benchmark columns show the same median. We subtract from each call's time the mean time of the three free calls we made to the same provider before that call. If that mean is longer than the call, we use the provider's median baseline, capped at the call's time, so no time is below zero. For a call we didn't benchmark, we show the time from the provider's pages, or a time we measured when we added the row. We also show the provider's time or our own measured time on a plan that lacks a check or feature that the benchmarked plan has. We leave the median blank (null) when we have no time. We also leave the median blank when the benchmarked call gave no answer we could time. The JSON and datacircle.csv give the time in milliseconds. The sheet and its CSV give it in seconds.","send":"What you give the call: a page's URL. The call needs the inputs before \"Optional:\". The optional ones come after it, or after a semicolon in the CSV and the JSON.","method":"The call's HTTP method.","path":"We give the path from the provider's docs. When that path fails, we give the path that works. Each plan of a call has the same path. A plan the provider serves at its own address has its own path.","plan":"The plan, as the provider names it on its pricing page.","who":"Who the provider offers the plan to: \"anyone\", or the condition its pages set, like \"anyone with a work email\" or \"on approval of an application\".","readFrom":"The pages we read the row's values from. They are the sheet's last column: click a cell to see each page, or press ⌘C to copy them all."},"billed":{"free":"Free: nothing to pay","on-demand":"Nothing to buy first: you pay as you go","one-time":"You buy credit first, as a pack or any amount you like, then spend it on calls","contact":"No public price: you ask the provider for one","monthly":"A monthly subscription","quarterly":"A quarterly subscription","half-yearly":"A subscription for 6 months","yearly":"A yearly subscription"},"defaults":["No contact us plans","No free plans","No yearly plans","$500 or less to start"],"kept":27,"paid":{"ranked":{"Web scraping":[0.0667,0.0667,0.07,0.08,0.083,0.083,0.083,0.083,0.083,0.083,0.083,0.083,0.083,0.0833,0.09,0.095,0.095,0.098,0.098,0.098,0.099,0.099,0.099,0.099,0.0997,0.0997,0.1,0.1,0.116,0.116,0.116,0.119,0.133,0.1395,0.149,0.149,0.15,0.1658,0.1658,0.166,0.166,0.169,0.175,0.18,0.1843,0.19,0.19,0.19,0.196,0.196,0.196,0.196,0.198,0.2,0.2,0.2,0.2,0.2,0.2381,0.24,0.2429,0.25,0.25,0.2533,0.2703,0.276,0.276,0.2778,0.2907,0.295,0.3,0.3,0.303,0.3038,0.325,0.3333,0.349,0.35,0.3625,0.38,0.38,0.3939,0.399,0.4,0.415,0.415,0.415,0.415,0.415,0.415,0.4167,0.4222,0.4222,0.45,0.49,0.49,0.495,0.495,0.495,0.495,0.495,0.4951,0.5,0.5,0.5,0.5,0.5,0.55,0.558,0.58,0.58,0.58,0.595,0.598,0.6,0.6,0.65,0.65,0.665,0.6667,0.6667,0.6667,0.69,0.69,0.6975,0.7,0.75,0.75,0.75,0.798,0.798,0.8,0.8,0.8,0.8,0.8,0.8292,0.8292,0.83,0.83,0.83,0.83,0.83,0.83,0.83,0.83,0.83,0.845,0.85,0.85,0.875,0.9,0.9,0.9,0.9,0.9,0.9214,0.95,0.95,0.95,0.95,0.95,0.95,0.98,0.98,0.98,0.98,0.98,0.99,0.99,0.99,0.99,0.99,0.99,0.99,0.9967,0.9967,0.9967,0.9967,0.9967,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.0114,1.1,1.16,1.16,1.16,1.19,1.1998,1.2143,1.245,1.245,1.25,1.25,1.2667,1.3,1.3,1.3029,1.3029,1.33,1.3429,1.38,1.38,1.395,1.4,1.4,1.475,1.49,1.49,1.49,1.49,1.49,1.5,1.5,1.5,1.5,1.5,1.5,1.5,1.5,1.5192,1.58,1.58,1.596,1.596,1.6111,1.6111,1.625,1.6478,1.6478,1.6583,1.6583,1.6666,1.6667,1.745,1.75,1.75,1.785,1.8,1.8125,1.8429,1.9,1.9,1.9,1.9,1.96,1.9693,1.98,1.98,1.98,1.9998,2,2,2,2,2,2,2,2,2,2,2,2,2.075,2.075,2.075,2.075,2.075,2.075,2.075,2.0833,2.1111,2.1111,2.25,2.36,2.36,2.375,2.375,2.45,2.45,2.45,2.475,2.475,2.475,2.475,2.4757,2.4917,2.4917,2.4998,2.5,2.5,2.5,2.5333,2.6,2.76,2.76,2.792,2.85,2.85,2.9,2.9,2.9,2.95,2.99,2.99,3,3,3,3,3.25,3.325,3.45,3.4875,3.625,3.725,3.725,3.8,3.8,4,4,4,4,4.1458,4.1458,4.15,4.15,4.15,4.15,4.2222,4.2222,4.225,4.375,4.425,4.47,4.47,4.6071,4.75,4.75,4.75,4.9,4.9,4.9,4.9,4.9,4.9,4.9,4.9,4.9,4.95,4.95,4.95,5,5,5,5,5,5,5,5,5,5,5,5,5.5,5.52,5.8,5.8,5.999,6,6,6,6,6,6,6,6.0714,6.225,6.25,6.3333,6.9,6.9,7.125,7.125,7.425,7.475,7.475,7.5958,7.6,7.6,8,8,8,8.125,8.45,9,9.0625,9.5,9.5,9.5,9.8,9.8464,10,10,10,10,10,10,10,10,10.375,10.375,10.375,10.5556,10.5556,11.175,11.175,12,12,12.1429,12.25,12.25,12.25,12.25,12.25,12.3783,12.5,14,14,14,14,14.7,14.7,14.7,15,15,15.1916,15.2,16,18,18,19,19.6928,23.75,23.75,23.75,24,24,24.7566,30,30,36.75,36.75]},"bench":{"Web scraping|ScraperAPI|/|Sync API":{"data":0.9257,"performance":0.7901933050447902,"median":2121,"measured":2121,"fastest":"Scrapestack","fastestMedian":1676,"fastestMeasured":1676,"called":19,"inputs":19,"fewer":false,"days":["2026-10-28"],"row":"ScraperAPI"},"Web scraping|Scrapeless|/api/v2/unlocker/request|Web Unlocker":{"data":0.9257,"performance":0.3074101247248716,"median":5452,"measured":5452,"fastest":"Scrapestack","fastestMedian":1676,"fastestMeasured":1676,"called":19,"inputs":19,"fewer":false,"days":["2026-10-28"],"row":"Scrapeless, Web Unlocker"},"Web scraping|Scrapeless|/api/v2/unlocker/request|JS Render":{"data":0.8365,"performance":0.2461086637298091,"median":6810,"measured":6810,"fastest":"Scrapestack","fastestMedian":1676,"fastestMeasured":1676,"called":19,"inputs":19,"fewer":false,"days":["2026-10-28"],"row":"Scrapeless, JS Render"},"Web scraping|HasData|/scrape/web|Web Scraping API":{"data":0.934,"performance":0.9431626336522229,"median":1777,"measured":1777,"fastest":"Scrapestack","fastestMedian":1676,"fastestMeasured":1676,"called":19,"inputs":19,"fewer":false,"days":["2026-10-28"],"row":"HasData"},"Web scraping|Scrapestack|/scrape|Scrape":{"data":0.9257,"performance":1,"median":1676,"measured":1676,"fastest":"Scrapestack","fastestMedian":1676,"fastestMeasured":1676,"called":19,"inputs":19,"fewer":false,"days":["2026-10-28"],"row":"Scrapestack"}}},"alert":true,"bench":{"groups":[{"name":"Pages scraped","note":"We called each provider's calls once on the same 19 pages, on 28 October 2026. Time is each call minus a baseline, so the distance to the provider's servers drops out. For each data provider, we sent the address of the provider's pricing page. Whole page: the answer held 90% or more of the page's lines. Part of the page: the answer held some of the page's lines, but less than 90%. Not found: the call failed, or the answer held none of the page's lines.","columns":[{"name":"Whole page","kind":"count","values":{"ScraperAPI":[16,19],"Scrapeless, Web Unlocker":[16,19],"Scrapeless, JS Render":[15,19],"HasData":[17,19],"Scrapestack":[16,19]}},{"name":"Part of the page","kind":"count","values":{"ScraperAPI":[3,19],"Scrapeless, Web Unlocker":[3,19],"Scrapeless, JS Render":[2,19],"HasData":[2,19],"Scrapestack":[3,19]}},{"name":"Not found","kind":"count","values":{"ScraperAPI":[0,19],"Scrapeless, Web Unlocker":[0,19],"Scrapeless, JS Render":[2,19],"HasData":[0,19],"Scrapestack":[0,19]}}]},{"name":"Time per page","note":"We time each call that returned any of the page. From the call's time we take away a baseline time. The baseline is the mean of three free calls to the same provider just before the call, on the same connection. If that mean is longer than the call, we use the provider's median baseline, capped at the call's time, so no time is below zero. In a time column, Nothing to time means no call to this provider returned any of the page.","columns":[{"name":"Median","kind":"ms","values":{"ScraperAPI":2121,"Scrapeless, Web Unlocker":5452,"Scrapeless, JS Render":6810,"HasData":1777,"Scrapestack":1676}},{"name":"10th percentile","kind":"ms","values":{"ScraperAPI":977,"Scrapeless, Web Unlocker":3903,"Scrapeless, JS Render":5511,"HasData":836,"Scrapestack":1209}},{"name":"90th percentile","kind":"ms","values":{"ScraperAPI":7693,"Scrapeless, Web Unlocker":11784,"Scrapeless, JS Render":13041,"HasData":2916,"Scrapestack":2706}},{"name":"Fastest","kind":"ms","values":{"ScraperAPI":233,"Scrapeless, Web Unlocker":3185,"Scrapeless, JS Render":4975,"HasData":585,"Scrapestack":1079}},{"name":"Slowest","kind":"ms","values":{"ScraperAPI":18840,"Scrapeless, Web Unlocker":30926,"Scrapeless, JS Render":15415,"HasData":6386,"Scrapestack":8619}},{"name":"Baseline","kind":"ms","values":{"ScraperAPI":319,"Scrapeless, Web Unlocker":299,"Scrapeless, JS Render":291,"HasData":273,"Scrapestack":283}}]},{"name":"The scrape call","note":"We called the provider's own scrape call with the page's address. We also show what one page cost on this run.","columns":[{"name":"Call","kind":"text","values":{"ScraperAPI":"Sync API, the url alone, the page's HTML","Scrapeless, Web Unlocker":"Web Unlocker, the url with redirects followed, the page's HTML","Scrapeless, JS Render":"JS Render, the page's HTML once rendered","HasData":"Web Scraping API, no JavaScript rendering, the page's HTML, text and Markdown","Scrapestack":"Scrape, the url alone, the page's HTML"}},{"name":"Charged per page","kind":"text","values":{"ScraperAPI":"$0.00071 a page on average, some sites taking more credits","Scrapeless, Web Unlocker":"$0.0013","Scrapeless, JS Render":"$0.0058 a page on average, misses included, each page its own price","HasData":"$0.0003","Scrapestack":"$0.0001"}}]}],"inputs":{"said":"The 19 pages we called, as each provider's call took them.","keys":["url"],"rows":[["https://www.datamagnet.co/pricing/"],["https://derrick-app.com/pricing"],["https://thehog.ai/pricing"],["https://scrupp.com/pricing"],["https://www.browserbase.com/pricing"],["https://www.emailverify.io/pricing/"],["https://www.tinyfish.ai/pricing"],["https://scavio.dev/pricing"],["https://anvendor.com/pricing"],["https://www.openmart.ai/pricing"],["https://enrichley.com/pricing"],["https://www.lead411.com/pricing/"],["https://mrscraper.com/pricing"],["https://pipecorn.com/pricing"],["https://enrow.io/en/pricing"],["https://www.explorium.ai/pricing"],["https://signalwire.com/pricing/rates"],["https://avesapi.com/pricing"],["https://www.waterfall.io/pricing"]]}},"more":"/assets/sheet-Vh8pXVLJ.json"}