USDA Farmers Market Directory Scraper
Pricing
from $3.00 / 1,000 results
USDA Farmers Market Directory Scraper
Scrape the USDA National Farmers Market Directory - market names, full addresses, GPS coordinates, operating season, products sold, accepted payment methods (SNAP/WIC/credit/debit), and contact/social links. Search by U.S. state or by city/ZIP + radius.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
Scrape the USDA National Farmers Market Directory — the official government listing of farmers markets across all 50 U.S. states, DC, and U.S. territories. Get market names, full addresses, GPS coordinates, operating season, products sold, accepted payment methods (SNAP/EBT, WIC, credit/debit, cash), delivery/pickup options, day-by-day schedules, and contact/social links. No login, no cookies, no proxy required.
What this actor does
- Search by state — pull every farmers market in any of the 50 states, DC, or U.S. territories in one run
- Search by location + radius — search around a city, ZIP code, or address within 1–250 miles
- Filter by product — only return markets that sell a given product (e.g. "Honey", "Eggs")
- Filter by payment method — Cash, Debit/Credit card, Mobile payments, Checks, Barter, Volunteer Work (matches ALL selected)
- Filter by food assistance program — SNAP/EBT, WIC, WIC Farmers Market Program, Senior Farmers Market Nutrition Program, state/regional Match Program (matches ALL selected)
- Filter by delivery option — curbside pickup, local pickup, home delivery (matches ALL selected)
- Filter by production/practice method — Organic (USDA Certified or practicing), Non-GMO, Grass Fed, Kosher, Halal, and 9 more (matches ALL selected)
- Filter by operating day — only return markets open on any of the selected days of the week
- Filter by operating month — only return markets open during any of the selected months
- Filter to markets currently open for the season
- Optional deep enrichment — day-by-day schedule, number of vendors, production/practice methods, online-order methods
- Empty fields are always omitted — every returned field is real, non-fabricated data
Output per farmers market
marketId,name,descriptionseason— operating season (e.g. "Year-round", "May to October")products[]— products sold (e.g. "Fresh vegetables", "Honey", "Eggs")streetAddress,city,state,zipCode,fullAddresslatitude,longitudedistanceMiles— only present for location+radius searchescontactName,contactEmail,contactPhonewebsiteUrl,facebookUrl,twitterUrl,instagramUrl,pinterestUrl,youtubeUrl,blogUrlimageUrl— market photo, when the market has uploaded one (generic stock placeholders are omitted)lastUpdated— when USDA last verified this listingsourceUrl— canonical USDA Local Food Portal listing page
With "Include detailed enrichment" enabled (default on)
-
acceptedPaymentMethods[],fnapPrograms[] -
productionMethods[]— e.g. "Certified Organic", "Non-Certified, but Practicing Organic" -
onlineOrderMethods[],pickupDeliveryOptions[] -
schedule[]— day-by-day operating hours and notes -
numberOfVendors -
additionalNotes— free-text market description -
recordType: "farmersMarket",scrapedAt
Input
| Field | Type | Default | Description |
|---|---|---|---|
locationState | select | California | U.S. state/territory to search. Takes priority over location. |
location | string | – | City, ZIP code, or address to search around (ignored if locationState is set) |
radiusMiles | int | 30 | Search radius in miles (1–250), used with location |
keyword | string | – | Only return markets whose name/description contains this text |
products | string | – | Only return markets that sell this product |
acceptedPaymentMethods | array | [] | Only return markets accepting ALL selected payment methods (always matched exactly, regardless of includeDetails) |
fnapPrograms | array | [] | Only return markets in ALL selected food-assistance programs (always matched exactly, regardless of includeDetails) |
deliveryMethods | array | [] | Only return markets offering ALL selected delivery/pickup options (always matched exactly, regardless of includeDetails) |
productionMethods | array | [] | Only return markets whose vendors follow ALL selected production/practice methods, e.g. Organic, Non-GMO (always matched exactly, regardless of includeDetails) |
operationDays | array | [] | Only return markets open on ANY of the selected days of the week (always matched exactly, regardless of includeDetails) |
operationMonths | array | [] | Only return markets open during ANY of the selected months (always matched exactly, regardless of includeDetails) |
currentSeasonOnly | bool | false | Only return markets currently open for the season |
includeDetails | bool | true | Include extra enrichment fields in the output. Turning this off omits those fields (leaner/faster output) but never affects filter accuracy. |
maxItems | int | 50 | Maximum markets to return (1–2000) |
At least one of locationState or location must be provided.
Example: every farmers market in Vermont
{"locationState": "Vermont","maxItems": 500}
Example: markets near a ZIP code that accept SNAP
{"location": "78701","radiusMiles": 25,"fnapPrograms": ["SNAP"]}
Example: markets selling honey that take mobile payments
{"locationState": "Oregon","products": "Honey","acceptedPaymentMethods": ["Mobile payments"]}
Use cases
- Local-food discovery apps — power a farmers-market finder with official USDA data
- SNAP/WIC outreach — identify markets in a region that accept food assistance programs
- Agricultural research — analyze market density, products, and seasonality by state
- Local business directories — enrich food/farm business listings with verified market data
- Nonprofit & government reporting — track USDA-registered farmers market coverage by geography
FAQ
What's the data source? The USDA Agricultural Marketing Service's National Farmers Market Directory, served via the USDA Local Food Portal (usdalocalfoodportal.com) — the same public directory embedded at ams.usda.gov/local-food-directories/farmersmarkets.
Do I need an API key or login? No — the directory is a public USDA dataset with no auth requirements.
Why does distanceMiles sometimes not appear? It's only calculated for location + radiusMiles searches, which have a geocoded search center. State-wide searches (locationState) return the entire state without a distance reference point.
Why is imageUrl sometimes missing? Not every market has uploaded a photo. When a market has no photo, USDA's directory shows a generic stock placeholder image — this actor omits that placeholder rather than returning a non-market-specific stock photo.
Do acceptedPaymentMethods/fnapPrograms/deliveryMethods/productionMethods need "Include detailed enrichment" for exact ALL-of matching? No. Those fields only exist on each market's detail page, and the underlying USDA search API's own server-side filter for them is unreliable (near-exact-match only, not true ALL-of), so whenever you set any of these filters, the actor always fetches each candidate market's detail page and applies a true ALL-of check itself -- regardless of the separate includeDetails toggle. includeDetails only controls whether the extra enrichment fields (accepted payment methods, FNAP programs, etc.) also appear in the output; turn it off for a leaner export without losing any filter accuracy.
Do operationDays/operationMonths also need "Include detailed enrichment" for reliable ANY-of matching? No, for the same reason as above: the USDA search API's own day/month filter only matches a market whose entire stored schedule is an exact match for the selected values, silently excluding most multi-day/multi-month markets, so the actor always checks each market's own detail-page schedule/season text for a genuine ANY-of match whenever these filters are set, regardless of includeDetails.
Can I combine locationState and location? locationState always takes priority when both are set; the underlying USDA search only supports one search-center mode at a time.
How fresh is the data? Market operators self-report and update their listings; lastUpdated reflects the date USDA's directory last recorded a change for that market.
Why does enabling "Include detailed enrichment" make the run slower? It fetches one extra detail page per market to extract payment methods, schedule, and vendor count. Disable it for a leaner export of just the core address/contact fields -- note this does NOT skip the detail fetch (and is NOT faster) for a run that also sets any payment/FNAP/production/delivery/day/month filter, since those filters require the detail page to be fetched for correct matching regardless of this toggle.
Limitations
usdalocalfoodportal.com's load balancer returns403to requests without a standard browserUser-Agentheader (e.g. a barecurlrequest with no headers). This applies uniformly to every URL on the domain — market photos, source listing pages, and market websites hosted there — and is not specific to this actor. Any normal browser or HTTP client that sends a standardUser-Agent(as this actor does) receives a normal200response.