skills/sales-outscraper/SKILL.md
Outscraper platform help — data extraction platform that scrapes Google Maps, reviews, and 50+ sources plus an instant Business Catalog database. Use when Google Maps scraping isn't returning enough businesses, reviews aren't extracting correctly, email/contact scraping misses results, company enrichment data is incomplete, email validation flags too many false positives, or the Outscraper API isn't working as expected. Do NOT use for general prospect list strategy (use /sales-prospect-list), cross-platform enrichment strategy (use /sales-enrich), or email deliverability strategy (use /sales-deliverability).
npx skillsauth add sales-skills/sales sales-outscraperInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Help the user with Outscraper platform questions — from Google Maps scraping and reviews extraction through email/contact scraping, lead enrichment, company insights, email validation, Amazon scraping, review platform scraping, geocoding, and API integration. Outscraper is a data extraction and enrichment platform that scrapes Google Maps, reviews, and 50+ internet sources. Founded in 2018 by Vlad May and Vlad Romanov, based in Bee Cave, TX. Used by 180K+ businesses.
If references/learnings.md exists, read it first for accumulated knowledge.
Ask the user:
What area of Outscraper do you need help with?
What's your role?
What are you trying to accomplish? (describe your specific goal or question)
If the user's request already provides most of this context, skip directly to the relevant step. Lead with your best-effort answer using reasonable assumptions (stated explicitly), then ask only the most critical 1-2 clarifying questions at the end — don't gate your response behind gathering complete context.
Note: If the user needs a specialized skill, route them there with a brief explanation of why that skill is a better fit.
If the request maps to a specialized skill, route:
/sales-prospect-list/sales-enrich/sales-deliverability/sales-integration/sales-apollo/sales-hunter/sales-prospeo/sales-seamless/sales-tombaOtherwise, answer directly from platform knowledge using the reference below.
Read references/platform-guide.md for detailed module documentation, pricing, integrations, and data model.
You no longer need the platform guide details — focus on the user's specific situation.
Based on the user's specific question:
Scraping Google Maps businesses for a target market:
GET /google-maps-search with your query array (up to 25 queries per request)limit parameter to control how many results per query (default 20, max 500)Extracting and analyzing Google Maps reviews:
GET /maps/reviews-v3 with place_ids, set sort (newest, most_relevant, highest_rating, lowest_rating)cutoff parameter to only get reviews after a specific date — useful for ongoing monitoringreviewsLimit to cap reviews per place (controls cost for businesses with thousands of reviews)Building a lead list with emails and contacts:
GET /emails-and-contacts to scrape email addresses from company websitesGET /contacts-and-leads with company names or domains to find up to 3 contacts per company with names, titles, emails, and phone numbersGET /email-validator before outreach — remove invalid and risky addressesGET /company-insights for firmographics, tech stack, and social profiles to prioritize leads by ICP fitSetting up webhook callbacks for async results:
GET /requests/{id}, add the webhook parameter with your callback URLBuilding a lead list from the Business Catalog:
POST /businesses-free (API key) for testing or small lists up to 1,000 results, or POST /businesses (OAuth2) for full production accesscountry_code, states/cities/postal_codes for geography, types for business category (e.g. ["restaurant", "cafe"]), rating (e.g. "4.0+"), has_website: true, has_phone: true to ensure contactable businessescontacts_n_leads with contacts_per_company and emails_per_contact to get decision-maker emails, plus company_insights for firmographicsfields array to return only the columns you need — reduces response size and speeds up processingcursor — each response includes next_cursor and has_more. Loop until has_more is falseGET /email-validator on the scraping API before outreachUsing the Python SDK:
pip install outscraperfrom outscraper import OutscraperClient; client = OutscraperClient(api_key='YOUR_KEY') (the old ApiClient name still works as a backward-compatible alias, but OutscraperClient is current)results = client.google_maps_search('restaurants, NYC', limit=100)reviews = client.google_maps_reviews('place_id_here', reviews_limit=50, sort='newest')results = client.validate_emails(['[email protected]'])Best-effort from research — review these, especially items about plan-gated features and integration gotchas that may be outdated.
GET /requests/{id} until the status is complete, or use the webhook parameter to receive results via callback. The Python SDK handles polling automatically, but raw API users need to implement this themselves./contacts-and-leads endpoint finds emails but does not verify deliverability. Always run found emails through /email-validator before outreach to avoid bounces and protect your sender reputation.reviewsLimit parameter, you could extract (and pay for) all of them. Always set a sensible limit unless you specifically need the full review history.references/learnings.md with today's date./sales-prospect-list — Build and refine prospect lists using data from Outscraper and other sources/sales-enrich — Cross-platform datan enrichment strategy (combine Outscraper with other enrichment tools)/sales-deliverability — Email deliverability and verification strategy (beyond Outscraper's email validation)/sales-integration — Connect Outscraper to CRM, automation, or other tools/sales-do — Not sure which skill to use? The router matches any sales objective to the right skill. Install: npx skills add sales-skills/sales --skill sales-doUser says: "I need to build a list of all HVAC companies in the Dallas-Fort Worth metro area with their contact info and ratings." Skill does:
GET /google-maps-search with batched queries (up to 25 per request), limit=500 per queryGET /emails-and-contacts on extracted websites to find email addresses for outreachGET /email-validator to remove invalid addresses before loading into CRM
Result: User has a comprehensive, deduplicated list of HVAC companies across DFW with verified contact info, ratings, and review counts — ready for CRM import and sales outreachUser says: "I want to monitor what customers are saying about our top 3 competitors on Google Maps, Yelp, and Trustpilot." Skill does:
GET /maps/reviews-v3 for Google Maps reviews, GET /yelp/reviews for Yelp reviews, GET /trustpilot/reviews for Trustpilot reviewssort=newest and cutoff date parameter to only pull recent reviews (e.g., last 90 days), controlling both relevance and costreviewsLimit=100 per business per platform to keep volumes manageableUser says: "I have a list of 200 company domains. I need to enrich them with employee count, industry, tech stack, and find decision-maker contacts." Skill does:
GET /company-insights — 8 batched API calls totalGET /contacts-and-leads using the same domains — returns up to 3 contacts per company with names, titles, emails, phones, and LinkedIn profilesGET /email-validator — flags invalid and risky addresses for removalSymptom: A query like "restaurants, New York" returns only 100–200 results when you expected thousands. Cause: Google Maps limits the number of results shown for any given search query, and Outscraper is capped at 500 results per query. Broad queries in dense areas will hit this ceiling and miss many businesses. Solution: Break your search into smaller, more specific geographic queries. Instead of "restaurants, New York", search by neighborhood or zip code: "restaurants, 10001", "restaurants, 10002", etc. Batch up to 25 of these queries per API request. Deduplicate the combined results using place_id as the unique identifier. For very large scraping projects, consider programmatically generating queries from a list of zip codes or neighborhood names to ensure full coverage.
Symptom: You submitted a request and received a request ID, but polling GET /requests/{id} keeps returning a "processing" status, or the task shows as complete but results are empty.
Cause: Large requests (many queries or high review limits) can take significant time to process. Empty results may indicate invalid inputs (wrong place_ids, unreachable domains) or the target data genuinely not existing (e.g., a business with no reviews).
Solution: For long-running tasks, use the webhook parameter instead of polling — you'll receive a POST callback when results are ready. Check your input data for validity: ensure place_ids are correct, URLs are accessible, and domains resolve. If using the Python SDK, increase the timeout or use async mode. For persistently stuck requests, check the Outscraper status page or contact support. Note that very large requests may be split into sub-tasks internally.
Symptom: A high percentage of emails come back as "risky" rather than "valid" or "invalid" after running through /email-validator.
Cause: "Risky" typically means the mail server accepts all addresses (catch-all domain) or the SMTP check was inconclusive. Many corporate domains configure catch-all to accept mail at any address, making it impossible to confirm whether a specific mailbox exists. This is common with large enterprise domains.
Solution: "Risky" emails are not necessarily bad — many are deliverable. For catch-all domains, the email format may still be correct even though it cannot be verified at the SMTP level. Consider sending to risky emails with caution: include them in your outreach but monitor bounce rates closely. If bounce rates from risky addresses exceed 5%, remove them. For critical outreach, supplement Outscraper validation with a secondary validation service that uses additional signals like historical send data or social profile matching.
tools
Wizlogo (wizlogo.com) platform help — a budget online logo maker (template/style-variation, marketed as "AI") plus a hub of FREE branding tools (business-name, blog-name and slogan generators, business-card maker, invoice generator, color converter, domain search). The pricing traps: the FREE logo is PERSONAL-USE-ONLY; the two cheap paid tiers are RASTER PNG/JPG only — Single (~€39.99 one-time) and Unlimited (~€3.99 per WEEK, recurring) — and VECTOR (SVG/PDF/EPS) is gated to the ~€299.99 Enterprise tier, which also bundles human designer edits and a social kit. Transparent PNG is on all paid plans. Use when making a Wizlogo logo, understanding free-vs-paid or personal-vs-commercial use, which tier unlocks vector/SVG for print, the weekly-subscription billing trap, its free name/slogan generators, or whether it has an API (UI-only — no public API, webhooks, Zapier or MCP). Do NOT use to just generate the business name (use /sales-namelix) or to compare/validate branding tools (use /sales-idea-validation).
tools
VistaPrint platform help (vistaprint.com, a Cimpress company) — the small-business design + print + digital-marketing platform: a free AI Logomaker (4 generations, 60 more after free sign-up) exporting SVG/PNG/PDF at 4000x4000 with no watermark, a free Brand Kit, business cards/flyers/signage/apparel/promo print, and a website builder. THE RIGHTS TRAP: VistaPrint states NO intellectual-property rights transfer on an AI-generated logo — you get usage rights but CANNOT register it for trademark or copyright; only its human designer service transfers full IP. Use when making a VistaPrint logo, asking if you own or can trademark it, running out of AI logo credits, printed colors not matching the screen, bleed/DPI/font file-prep rejections, or asking whether VistaPrint has an API (the consumer site does not — automation runs through the parent Cimpress Open partner-fulfilment API). Do NOT use for Vista Social scheduling (use /sales-vistasocial) or comparing logo tools market-wide (use /sales-idea-validation).
tools
Turbologo (turbologo.com) platform help — a budget AI/DIY logo maker: enter a business name + industry, pick icons and colors, and it proposes logo concepts you refine in an in-browser editor, then pay a one-time fee to download (designing is free, previews are watermarked, downloading is the paywall). Vector SVG/PDF is gated to the mid tier and up; the top tier adds a brand kit (business cards, letterheads, email signatures, social assets). Use when generating a logo in Turbologo, choosing which download tier to buy, vector SVG vs raster PNG, removing the free watermark, the time-limited edit-after-purchase window, pay-to-download pricing questions, whether an AI logo is yours to trademark, or whether Turbologo has an API to bulk-generate logos (it is UI-only — no public API, webhooks, Zapier, or MCP). Do NOT use to generate the business name (use /sales-namelix), compare or validate branding tools across the market (use /sales-idea-validation), or build wider marketing creative (use /sales-canva).
tools
Online Logo Maker (onlinelogomaker.com) platform help — a long-standing free/freemium DIY logo maker: build the mark yourself from icons, shapes, text, and fonts — MANUAL/template-based, NOT enter-a-name-get-AI-concepts. The free pack downloads a LOW-RES 300px PNG with a background; vector SVG, transparent PNG, and 2000px high-res are gated to a one-time lifetime Premium pack (not a subscription). The free tier's commercial-use rights are disputed by reviewers — clean ownership effectively needs Premium, and a shared-icon mark can be non-distinctive. Use for building/editing a logo here, free download vs Premium, vector SVG or transparent PNG, one-time pricing, commercial-use/trademark terms, near-namesake confusion (NOT LogoMaker.com / LogoMakr / Logomakerr.ai), or whether it has an API (UI-only — no API, webhooks, Zapier, MCP). Do NOT use to generate the business name (use /sales-namelix), compare branding tools across the market (use /sales-idea-validation), or build wider creative (use /sales-canva).