Entrepreneur Franchise 500 Scraper - Rankings & Investment avatar

Entrepreneur Franchise 500 Scraper - Rankings & Investment

Pricing

from $3.00 / 1,000 franchise records

Go to Apify Store
Entrepreneur Franchise 500 Scraper - Rankings & Investment

Entrepreneur Franchise 500 Scraper - Rankings & Investment

THE definitive annual US franchise ranking - 500 franchises with financial + growth data. Built for franchise consultants, brokers, PE firms, journalists, and prospective franchisees.

Pricing

from $3.00 / 1,000 franchise records

Rating

0.0

(0)

Developer

Growth Installations

Growth Installations

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Entrepreneur Franchise 500 Scraper

Extract the entire Entrepreneur.com Franchise 500 ranking with real financial disclosure data — initial investment ranges, franchise fees, royalty %, ad fund %, unit counts, and 10+ years of unit-history growth per brand. Built for franchise consultants, brokers, private-equity acquirers, journalists, and prospective franchisees who need the numbers that make or break a deal.

What this Actor does

Scrapes every brand on entrepreneur.com/franchise500 and its sub-rankings (Fastest Growing, Top Global, Top Food, Best for Veterans, and more), returning a flat table with:

  • Ranking data — rank, brand name, category, parent company
  • Financials — initial investment min/max, initial franchise fee, ongoing royalty %, ad fund %, term-length in years
  • Unit counts — US units, international units, company-owned units, total units
  • Multi-year unit history — a per-brand time-series going back to 2016 covering US / international / company-owned / total units, revealing growth or contraction over a decade
  • Leadership — CEO name
  • Metadata — year founded, franchising since, brand logo URL, canonical Entrepreneur profile URL

The Franchise 500 has been the industry-standard US franchise ranking since 1980. This actor makes it queryable, filterable, and integratable into deal-flow workflows.

Why buyers care

Franchise brokers typically earn $10-25k per successful placement. Knowing that Jersey Mike's requires $181k-$1.4M initial investment with 6.5% royalty vs. Culver's at $3.4M-$10.3M with 4% royalty is the difference between a matched intro and a wasted call. This dataset drops straight into a broker CRM.

Franchise consultants cross-reference royalty % and ad-fund % against a prospect's cash flow model — the two fields that determine unit economics after a franchisee opens.

PE firms and family offices scanning for roll-up targets use growth_last_3yr + num_units_us history to spot brands adding 50+ units/year — the profile that trades at 8-12x EBITDA.

Journalists and researchers get a machine-readable snapshot of an editorial ranking that has historically only been available as an infinite-scroll web page.

Prospective franchisees compare 15-20 candidate brands side-by-side on the fee/investment/royalty numbers that are otherwise buried inside individual FDD documents.

How to use

  1. Open the actor in Apify Console and click Try for free.
  2. Set Ranking to Franchise 500 (all 500) (or pick a sub-ranking like Fastest Growing).
  3. Optionally narrow with Rank from / Rank to (e.g. top 100) or a Category slug like food, automotive, pets.
  4. Leave Fetch detail pages on (this is what gets you the financial fields; disable only if you want the light ranking-list feed).
  5. Click Save & Start. A full 500-brand run finishes in about 1 minute.
  6. Download the dataset as JSON, CSV, Excel, HTML, or RSS from the Storage tab.

Input

FieldTypeDefaultNotes
rankingIdenumf500f500 (all 500), fs (Fastest Growing), tv (Veterans), tg (Global), tm (Multi-Unit), bb (Best of the Best), tf (Top Food), tb (Boomers), ab (Adventurous)
categorystringnoneOptional category slug: food, automotive, pets, health-wellness, home-improvement, business-services, childrens-businesses, financial-services, personal-care, retail
rankFromint1Starting rank
rankToint500Ending rank
includeDetailbooltrueFetch detail pages for financial fields. Turn off only for a fast ranking-list-only pull
maxConcurrencyint10Parallel detail-page fetches (site's robots.txt is fully open)

Example input for the top 50 food franchises:

{
"rankingId": "f500",
"category": "food",
"rankFrom": 1,
"rankTo": 50,
"includeDetail": true,
"maxConcurrency": 10
}

Output

Each dataset item is one franchise brand. Example (top-ranked #1 in the 2025 Franchise 500):

{
"rank": 1,
"brand": "Jersey Mike's Subs",
"category": "Food / Sandwiches",
"parent_company": "Blackstone",
"year_founded": 1956,
"franchising_since": 1987,
"num_units_us": 3105,
"num_units_intl": 0,
"num_company_owned": 40,
"num_units_total": 3145,
"growth_last_3yr": 39,
"initial_investment_min": 181903,
"initial_investment_max": 1413592,
"initial_franchise_fee": 18500,
"royalty_pct": 6.5,
"ad_fund_pct": 5,
"term_length_years": 20,
"ceo": "Peter Cancro",
"hq_city": null,
"hq_state": null,
"website": null,
"url": "https://www.entrepreneur.com/franchises/directory/jersey-mikes-subs/282041",
"logo_url": "https://assets.entrepreneur.com/franchise/282041-avatar-image-...jpeg",
"unit_history": [
{ "year": 2016, "us": 1179, "intl": 0, "company": 0, "total": 1179 },
{ "year": 2020, "us": 1785, "intl": 0, "company": 15, "total": 1800 },
{ "year": 2025, "us": 3105, "intl": 0, "company": 40, "total": 3145 }
],
"slug": "jersey-mikes-subs",
"entrepreneur_franchise_id": "282041"
}

Data table

FieldTypeNotes
ranknumberRanking position within rankingId
brandstringBrand name as printed by Entrepreneur
categorystringparent / primary slash-joined
parent_companystring | nullCorporate parent when disclosed
year_foundednumber | null4-digit year
franchising_sincenumber | null4-digit year the brand began franchising
num_units_usnumber | nullLatest-year US unit count
num_units_intlnumber | nullLatest-year international unit count
num_company_ownednumber | nullLatest-year company-owned unit count
num_units_totalnumber | nullSum of the above
growth_last_3yrnumber | nullPercent unit growth over trailing 3 years
initial_investment_minnumber | nullUSD, low end of investment range
initial_investment_maxnumber | nullUSD, high end of investment range
initial_franchise_feenumber | nullUSD, upfront franchise fee
royalty_pctnumber | nullOngoing royalty percent of gross sales
ad_fund_pctnumber | nullOngoing advertising / brand fund percent
term_length_yearsnumber | nullLength of initial franchise agreement
ceostring | nullCurrent CEO (parsed from "Leadership" field)
hq_citystring | nullHQ city (not surfaced on the current site — reserved for future)
hq_statestring | nullHQ state (not surfaced on the current site — reserved for future)
websitestring | nullBrand corporate site (not surfaced on the current site — reserved for future)
urlstringCanonical Entrepreneur.com detail page
logo_urlstring | nullBrand logo image URL
unit_historyarrayPer-year {year, us, intl, company, total} going back to 2016 in most cases
slugstringURL slug used by Entrepreneur
entrepreneur_franchise_idstringInternal id used by Entrepreneur's GraphQL

Multi-year unit history

Even though Entrepreneur only publishes the current Franchise 500 ranking on their site (prior years are not archived at public URLs), each brand's detail page carries the full 10+ year unit-count time series — US, international, company-owned, total — from 2016 forward. That embedded chart data is parsed out into the unit_history array, giving you a decade of growth-or-contraction signal per brand without needing a paid FDD subscription.

Verified from a real run

A 15-brand test run on the top of the 2025 Franchise 500 populated the differentiator fields at these rates:

FieldPopulated
initial_investment_min15/15
initial_investment_max15/15
initial_franchise_fee15/15
royalty_pct13/15
ad_fund_pct13/15
term_length_years14/15
ceo15/15
year_founded / franchising_since15/15
parent_company13/15
unit_history15/15 (10+ years each)

Fields that came back systematically null on the current site: hq_city, hq_state, website — these are not surfaced on Entrepreneur's current detail-page template and are kept in the schema as reserved.

Pricing

Pay per result: approximately $2.00 per 1,000 records.

ScenarioRecordsApprox. cost
Top 15 test15~$0.03
Top 100 F500100~$0.20
Full Franchise 500 with financials500~$1.00
Weekly full pull for a year26,000~$52

A full 500-record run finishes in roughly 60-90 seconds of platform compute (one GraphQL call for the ranking plus 500 lightweight Cheerio detail-page fetches).

Tips

  • First run: pull the full 500 with includeDetail: true and let it complete. Use that as your baseline snapshot.
  • Weekly refresh: schedule the full-500 pull weekly — Entrepreneur updates unit counts and financial disclosures throughout the year as franchisors submit revised FDDs.
  • Fast list-only pull: set includeDetail: false if you only need rank + brand + category + investMin + growth. This drops the 500 detail fetches and cuts run time to under 5 seconds.
  • Category slicing: pair a category filter with rankFrom/rankTo to build focused ICP lists — for example, top 25 food or top 50 home-improvement brands only.
  • Integrate with your CRM: use the Apify API or a scheduled task to append weekly snapshots into Postgres/BigQuery, then diff on num_units_us or initial_franchise_fee to catch fee changes and expansion signals early.

FAQ

Are you affiliated with Entrepreneur.com? No. This actor scrapes their public rankings pages using their own public GraphQL API. Entrepreneur.com's robots.txt is fully open on the franchise directory.

Is this legal? The Franchise 500 is a published editorial ranking on a public site with an open robots.txt. Redistribute responsibly; check Entrepreneur.com's Terms of Service for your use case.

Why are hq_city, hq_state, website null? Entrepreneur removed those fields from the current detail-page template. They remain in the schema for compatibility and will populate automatically if the site re-adds them.

Can I get prior-year rankings (2023, 2022, ...)? The current ranking is the only one Entrepreneur publishes at a public URL. However, unit_history gives you a per-brand 10-year time series of unit counts, which is what most buyers actually want out of a "historical" dataset. Take a full-500 snapshot each January to build your own year-over-year ranking archive going forward.

Support: report issues on the Issues tab. Custom variants (e.g. adding FDD document links, sub-ranking cross-joins) available on request.