Franchise Data API
Structured franchise investment data from 151 FDDs. Free tier available, no key required to start.
JSON responses · CORS enabled · Rate limit headers on every response
Quick Start
# List all franchises (no key needed)
curl https://franchisevs.com/api/brands
# Get a specific brand
curl https://franchisevs.com/api/brands/mcdonalds
# Compare brands
curl "https://franchisevs.com/api/compare?brands=mcdonalds,burger-king,wendys"
Rate Limits & Tiers
| Tier | Rate limit | Item 19 revenue | Price |
|---|---|---|---|
| Anonymous | 50 req/day | — | Free |
| Free (API key) | 100 req/day | — | Free |
| Pro (API key) | 1,000 req/day | ✓ Included | $49/mo |
Anonymous tier is IP-based. Free and Pro tiers require an API key — see Authentication below.
Authentication
Pass your API key using either of these methods:
# X-Api-Key header curl -H "X-Api-Key: fvs_your_key_here" https://franchisevs.com/api/brands # Or Authorization: Bearer curl -H "Authorization: Bearer fvs_your_key_here" https://franchisevs.com/api/brands
Endpoints
/api/brands List all 151 franchises with summary data. Supports filtering, sorting, and pagination.
average_revenue, revenue_low, and revenue_high fields require a Pro API key. Query Parameters
| Param | Type | Description |
|---|---|---|
| category | string | Filter by category (e.g. "Fitness", "QSR") |
| min_investment | number | Minimum initial investment ($) |
| max_investment | number | Maximum initial investment ($) |
| has_revenue | boolean | Only brands with Item 19 revenue data |
| sort | string | Sort field (brand_name, investment_low, health_score, etc.) |
| order | string | asc or desc (default: asc) |
| limit | number | Results per page, max 151 (default: 50) |
| offset | number | Skip N results (default: 0) |
Response Fields
| Field | Description |
|---|---|
| brand_name | Official franchise name |
| slug | URL-safe identifier (use with /api/brands/:slug) |
| category | Industry category |
| investment_low / investment_high | Total initial investment range ($) |
| franchise_fee_low / franchise_fee_high | Initial franchise fee range ($) |
| royalty_type / royalty_value | Ongoing royalty (percentage or flat) |
| average_revenue | Average unit revenue — Pro key required |
| revenue_low / revenue_high | Revenue range from Item 19 — Pro key required |
| total_units | Total franchise + company-owned units |
| health_score | FranchiseVS composite score (0-100) |
| risk_flags | Array of risk indicators |
/api/brands/:slug Full FDD data for a single franchise. Returns the complete extracted dataset including:
- Item 5 — Initial fees, territory variants, refundability
- Item 6 — Royalty, ad fund, technology fee, transfer/renewal fees
- Item 7 — Full initial investment table with line items
- Item 19 — Financial performance representations (revenue data) — Pro key required
- Item 20 — Outlet counts, year-over-year growth, state breakdown
- Derived metrics — Payback period, growth rate, fee burden, health score
Example: GET /api/brands/chick-fil-a
/api/categories List all franchise categories with brand counts and average investment ranges.
/api/compare Side-by-side comparison of 2-5 franchises. Returns summary, investment totals, fee structure, and revenue data for each brand.
Example: GET /api/compare?brands=planet-fitness,anytime-fitness,f45
Response Headers
Every API response includes the following rate limit headers:
| Header | Description |
|---|---|
| X-RateLimit-Limit | Your daily request limit for your current tier |
| X-RateLimit-Remaining | Requests remaining today |
| X-RateLimit-Reset | ISO 8601 timestamp when your limit resets (midnight UTC) |
| X-Api-Key-Tier | Your current tier: anonymous, free, or paid |
Data Source
All data is extracted from publicly filed Franchise Disclosure Documents (FDDs) submitted to state regulatory agencies under the FTC Franchise Rule. Currently covering 151 brands across 9 categories.
Data is extracted using automated processing with multi-layer validation. Each data point includes a confidence score. See our methodology page for details.
Try It
Click "Send" to try the API
Get API Access
Free tier available — no key required to start. Pro unlocks Item 19 revenue data for all 151+ brands.
Get Your API KeyQuestions? Email hello@franchisevs.com