· 13 min read
HotFrog Scraper: 17 Data Fields, Up to 1,000 Free Results/Month (2026)
Each record returned by the HotFrog Scraper carries 17 output fields, including business names, phone numbers, addresses, descriptions, and category information, making it suitable for generating comprehensive business listings. This Actor focuses on extracting US local business data from HotFrog.com, making it ideal for researchers or sales teams targeting specific US markets. It is not for anyone who needs email addresses or granular financial data, which the records do not include.
Try it before you read further. Apify's free plan includes $5.00 of usage every month with no credit card, enough for up to 1,000 results at $0.005 each before platform usage. Open HotFrog Scraper on Apify and run the prefilled example.
How reliable is HotFrog Scraper in production?
Across the last 30 days of public runs on the Apify platform, HotFrog Scraper recorded 105 runs with the following outcomes.
| Outcome | Runs | Share |
|---|---|---|
| Succeeded | 105 | 100.0% |
| Failed | 0 | 0.0% |
| Aborted by the user | 0 | 0.0% |
| Timed out | 0 | 0.0% |
| Total | 105 | 100.0% |
No run failed or timed out in the last 30 days. Keep a retry and an alert on scheduled runs all the same: a clean month is a record, not a guarantee.
What does it cost to run HotFrog Scraper?
Each result costs $0.005 on Apify's free plan, which is $5.00 per 1,000 results. Starting a run is charged separately at $0.005 per GB of Actor memory. Apify also bills the platform usage each run consumes, at the rates of your Apify plan, on top of these charges.
| Apify plan | Per result | Per 1,000 results |
|---|---|---|
| FREE | $0.005 | $5.00 |
| BRONZE | $0.00433 | $4.33 |
| SILVER | $0.00367 | $3.67 |
| GOLD | $0.003 | $3.00 |
| PLATINUM | $0.003 | $3.00 |
| DIAMOND | $0.003 | $3.00 |
Worked example: collecting 10,000 results costs $50.00 in result charges before run-start fees and platform usage. No run failed or timed out in the last 30 days, so the list price is a fair budget; keep a retry in place all the same.
The primary control affecting your bill is "maxItems", which directly limits the number of results written to the dataset. Since result charges apply only to results written, capping "maxItems" is the most direct way to manage costs. To estimate costs, run the Actor with a small "maxItems" value, such as 30, and then review the actual usage in your run logs.
How do you run HotFrog Scraper from the API?
The schema marks 1 of its 4 controls as required: mode. The payload below uses the schema's own prefilled values, so it runs as written once you substitute your API token.
Call the synchronous endpoint to start a run and receive dataset items in one request:
curl -X POST "https://api.apify.com/v2/acts/crawlerbros~hotfrog-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mode":"search","searchQuery":"plumber","location":"new-york","maxItems":30}'
The same run from Python, using the official client:
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "search",
"searchQuery": "plumber",
"location": "new-york",
"maxItems": 30
}
run = client.actor("crawlerbros~hotfrog-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
And from Node.js:
import { ApifyClient } from 'apify-client'
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' })
const input = {
"mode": "search",
"searchQuery": "plumber",
"location": "new-york",
"maxItems": 30
}
const run = await client.actor('crawlerbros~hotfrog-scraper').call(input)
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)
The synchronous endpoint holds the connection open until the run finishes, which is convenient for small batches and wrong for large ones. For anything long running, start the run asynchronously and poll, or attach a webhook, so a dropped connection does not cost you the results.
Which HotFrog Scraper inputs matter, and which can you skip?
This Actor has four input controls. Most users should focus on "searchQuery" and "location" to define their target businesses and geographic areas. The "mode" field defaults to 'search' and requires no changes, while "maxItems" is essential for managing the scope and cost of each run.
mode(string): What data to fetch. Default:"search".searchQuery(string): Business type or keyword, e.g. plumber, pizza restaurant, dentist. Default:"plumber".location(string): City or state as URL slug, e.g. new-york, los-angeles, texas, chicago. Default:"new-york".maxItems(integer): Hard cap on emitted records. Default:30.
Fixed-choice controls: mode accepts search (Search businesses by keyword and location).
What does HotFrog Scraper return?
The returned records are suitable for building comprehensive business directories and generating sales leads, providing business names, phone numbers, addresses, and website URLs. However, they conspicuously do not contain email addresses or detailed financial information, which means they are not suitable for direct email marketing campaigns or in-depth financial analysis.
businessName: String - Business display namebusinessId: String - HotFrog internal business IDphone: String - Business phone numberaddress: String - Street addresscity: String - City namestate: String - 2-letter state code (e.g.,NY)description: String - Business description (up to 500 characters)website: String - Business website URLcategory: String - Business category derived from profile URLprofileUrl: String - Full HotFrog profile URLlogoUrl: String - Business logo URL (when available)verified: Boolean - Whether the listing is verifiedsearchQuery: String - Search term usedsearchLocation: String - Location searchedrecordType: String - AlwaysbusinessscrapedAt: String - ISO 8601 timestampsourceUrl: String - Source search results page URL
These are the documented fields. Optional ones can be empty on a given record, so measure how often each field your deliverable depends on is populated across a real sample before automating the handoff.
How do you build the workflow end to end?
Open HotFrog Scraper and work through these in order. Each step ends with something to check, so a bad configuration surfaces on a small run rather than a scheduled one.
- Start by setting the "mode" to "search"; this is the default and only option.
- Input a specific business type or keyword into the "searchQuery" field, such as "dentist".
- Define a clear "location" using a city or state slug, for example, "los-angeles" or "new-york".
- For your initial test, keep "maxItems" low, perhaps at its default of 30, to ensure the output format is what you expect.
- Run the Actor and then inspect the dataset to verify that the
businessName,profileUrl, andcategoryfields are present and well-formed for the initial results. - Check for
phoneandwebsitefields, as not all listings include them. Understand this before scaling up.
How do you apply it? Three worked playbooks
These are HotFrog Scraper's own documented use cases, each worked through as an operating pattern rather than a description.
Use case 1: Local business lead generation
Outcome: Local business lead generation
Configure: Set "searchQuery" to a specific service like "HVAC repair" and "location" to a target city like "chicago". Keep "maxItems" to a reasonable limit, such as 200, for manageable batches.
Working method: Begin by running the Actor for a single city and a focused search query. Review the output for completeness of phone numbers and websites. Once satisfied, expand to additional cities or refine the search query to cover related services. You might integrate these leads into a CRM or use them for direct outreach campaigns.
Deliverable: A CSV file or database table containing business names, addresses, phone numbers, and website URLs for potential leads within a specified geographic area and business category.
Stop condition: An unusual proportion of records lack phone or website fields, or the category field frequently contains irrelevant entries for the given searchQuery.
Use case 2: Business contact database building
Outcome: Business contact database building
Configure: For comprehensive coverage, set "searchQuery" to broad categories like "restaurant" or "lawyer" and iterate through multiple "location" slugs. Adjust "maxItems" to 500 to capture as many listings as possible per run.
Working method: Start with a single broad category and location. Collect the initial set of data and then run the Actor for another location, combining the datasets. Expand the process to cover all relevant categories and locations needed for your database, ensuring data deduplication if running multiple overlapping searches. Focus on the profileUrl to track unique entries.
Deliverable: A deduplicated and normalized database of business contacts, including names, addresses, phone numbers, and websites, categorized by business type and location.
Stop condition: Duplicate profileUrl entries appear frequently across different runs, or address fields are consistently missing or malformed for a significant portion of results.
Use case 3: Market research and competitor analysis
Outcome: Market research and competitor analysis
Configure: Define a "searchQuery" relevant to your market, such as "pizza restaurant", and specify a "location" of interest, like "san-francisco". Set "maxItems" to a number that captures all relevant competitors, potentially up to 500.
Working method: Execute a run for your core business type and primary location. Analyze the businessName, description, website, and category fields to identify key competitors and their offerings. Repeat this process for adjacent keywords or locations to broaden your market view. Look for patterns in description or category to understand market segmentation.
Deliverable: A structured report or spreadsheet detailing competitor business names, descriptions, websites, and categories within a specified market segment, providing insights into market landscape and competitive strategies.
Stop condition: The description fields for a significant number of records are empty or generic, making it difficult to assess competitive offerings, or the category field is too broad to be useful.
What breaks, and how do you design around it?
- Over the last 30 days, 0.0% of public runs failed and 0.0% timed out. Build retries and alerting around those rates rather than assuming every run completes.
The "maxItems" control has a hard cap of 500 items per run. When approaching this limit, consider refining your searchQuery or location to target narrower sets of results. For instance, if searching for "dentist" in "new-york" yields too many results, you could specify a more granular location like "brooklyn-ny" or refine the query to "pediatric dentist".
When should you not use HotFrog Scraper?
This HotFrog Scraper is best suited for US local business directories. If your data needs extend beyond the United States, consider alternative Actors. For instance, if you need data for India, the Hotfrog India Scraper would be a more appropriate choice. For broader international coverage across multiple countries like the US, UK, Canada, and Australia, the Fyple Scraper - Local Business Directory provides a wider scope. If you require business information specifically from Switzerland, the local.ch Scraper - Swiss Business Directory would offer more precise data. Similarly, for businesses in Portugal, the PaiPt Scraper - Portugal Business Directory (Paginas Amarelas) is specialized for that region. Using this Actor for regions outside the US will yield no results and consume platform usage unnecessarily. Furthermore, if you require verified email addresses or comprehensive contact person details beyond a phone number, this Actor's output will fall short, as it does not provide these fields. In such cases, a specialized email-finding service or a different data enrichment Actor might be necessary.
What should you check before trusting the output?
- Check that
businessNameandprofileUrlfields are never null for any record, indicating a complete listing. - Verify that the
categoryfield contains relevant, descriptive text matching yoursearchQueryto ensure search accuracy. - Monitor
phoneandwebsitefields for consistent formatting or unexpected empty values, as their presence varies by listing. - Ensure
descriptionfields are present and contain actual business descriptions, not placeholders or error messages. - Confirm that the
scrapedAttimestamp is recent, indicating live data retrieval for each run.
None of this proves a record is correct. It gives a scheduled HotFrog Scraper run defined points where it should stop instead of quietly passing bad data downstream.
Frequently asked questions
What kind of business details does the HotFrog Scraper provide?
The HotFrog Scraper extracts business names, phone numbers, addresses, cities, states, descriptions, websites, categories, profile URLs, logo URLs (when available), whether the listing is verified, the search query and location used, and timestamps and source URLs for each record. You get 17 output fields for each business listing.
How reliable is the data collected from HotFrog?
Telemetry shows that in the last 30 days, 105 out of 105 runs succeeded. The data freshness varies by listing, as businesses maintain their own profiles on HotFrog. The Actor always fetches live data, so the information is as current as what is publicly displayed on the website at the time of scraping.
Can I get email addresses for businesses using this Actor?
No, the HotFrog Scraper does not extract email addresses. The output focuses on publicly available business contact information such as phone numbers and website URLs. If your project requires email addresses, you would need to use a different tool or integrate this data with another Actor specialized in email finding or lead enrichment.
How much does it cost to get 1,000 business listings?
On Apify's free plan, 1,000 results from the HotFrog Scraper cost $5.00 in result charges. This covers only the result charges; platform usage is billed separately.
Are there any limits to the number of businesses I can scrape?
Yes, there is a hard cap of 500 items per run using the "maxItems" control. If you need more than 500 results for a specific search query and location, consider refining your keywords or targeting smaller geographical areas to manage the volume effectively.
Where to go next
When you are ready to run it, open HotFrog Scraper on Apify; the free plan covers up to 1,000 results a month.
Start with the HotFrog Scraper Actor page for the current input schema, pricing tier, and run history.
If you are comparing approaches rather than committing to one Actor, these category pages list every option we publish:
- Contact and email scrapers covers 43 Actors in this family.
Other Actors we maintain for related data:
- Hotfrog India Scraper: Scrape Hotfrog India's local-business directory.
- Fyple Scraper - Local Business Directory: Scrape Fyple, a local business directory covering the US, UK, Canada, South Africa, New Zealand, Australia, and Ireland.
- local.ch Scraper - Swiss Business Directory: Scrape local.ch, Switzerland's leading business directory.
- PaiPt Scraper - Portugal Business Directory (Paginas Amarelas): Scrape pai.pt (Portugal's Yellow Pages / Paginas Amarelas business directory) listings.
- Gelbe Seiten Scraper - German Yellow Pages Business Directory: Scrape Gelbe Seiten (German Yellow Pages) business listings.
- DasTelefonbuch Scraper - German Business Directory: Scrape DasTelefonbuch.de (Germany's business directory) listings.
- 11880.com Scraper - German Business Directory: Scrape 11880.com (Germany's business directory) listings.
- Gulesider Scraper - Norwegian Business Directory: Scrape Gulesider.no (Norway's leading business directory) listings.
Related guides:
- Gulesider Scraper: Practical Guide for Norwegian Directory Workflows
- PagineGialle Scraper: Italian Business Listings Guide
- Expertise.com Local Pro Directory Scraper: 3 Practical Use Cases
- DasTelefonbuch Scraper: German Business Directory Playbooks
Resources
Actor documentation, input schema, and pricing: verified against the published Actor on 2026-09-25.
Actor last updated by its maintainers on 2026-06-11.
Run outcome figures cover the 30 day public window ending 2026-09-25.
Featured actors
HotFrog Scraper
Scrape HotFrog.com - US local business directory with millions of business listings. Search by keyword and location to get business names, phone numbers, addresses, categories, and descriptions.
Run on Apify ↗