FoodTruckCost

Food Truck Permit Fees by City: $280–$17,000 (2026)

Compare food truck permit and license costs across 50 major US cities. Click any column header to sort.

Cheapest City
Average Across All Cities
Most Expensive City
City State Business License Food Handler Health Dept Fire Dept Mobile Vendor Annual Renewal Total 1st Year

Beyond permits: is your ZIP code a viable market?

Permit costs tell you what you'll pay. ZIP-level market data tells you whether it's worth paying.

What Permits Does a Food Truck Actually Need?

Every food truck operator needs at least four permits before serving a single customer. A business license registers you with the city. A food handler permit certifies that you (and any employees) have completed food safety training. The health department permit is the big one: an inspector visits your truck and signs off on your equipment, storage, and sanitation setup. Then there's the mobile vendor permit, which is the city's permission to operate on public streets.

Some cities also require a separate fire department inspection, especially if you're running a deep fryer or commercial smoker. In California, expect a dedicated fire suppression system inspection. New York adds a commissary agreement requirement on top of everything else.

Why Boston Costs 20x More Than Denver

Boston's mobile vendor permit runs $12,000. Denver's runs $280. Same country, same type of business, 42x price difference. The reason is supply and demand enforced by regulation. Boston caps the number of food truck permits issued, creating a secondary market where permits trade hands for far more than the face value. Denver caps nothing. You pay a flat fee, you operate.

San Francisco ($8,500), Washington DC ($5,000), and Los Angeles ($4,250) all use permit scarcity as a revenue tool. Houston ($1,500), Phoenix ($1,200), and Jacksonville ($280) don't. If you're choosing between cities, permit costs are a real factor in your year-one budget.

The Health Department Inspection: What They're Looking For

Health inspectors check four things: temperature control, handwashing access, food storage, and surface sanitation. Your refrigerator must hold below 41°F. Your hot holding equipment must stay above 135°F. You need a separate handwashing sink in addition to your three-compartment sink. Raw proteins must be stored below ready-to-eat foods. Surfaces must be food-safe and cleanable.

Fail the inspection and you pay a re-inspection fee (typically $100-$250) and redo it. Most new operators fail once. Build in that budget buffer. Getting your commissary kitchen right before the inspection prevents most common failures.

Annual Renewal: The Ongoing Cost

First-year permit costs are the spike. Annual renewals are cheaper, usually 40-60% of the initial cost. Denver drops to $420/year. Houston runs about $1,100/year. Boston stays expensive at $3,500/year. Budget the annual renewal into your monthly operating costs from day one. Divide the annual renewal by 12 and add it to your monthly expense line.

If you operate in multiple cities or at events in neighboring jurisdictions, check whether each city requires its own vendor permit. Many do. Event-specific permits (farmers markets, festivals) sometimes run $25-$150 per event and stack on top of your base permits.

Updated March 2026. Permit costs are estimates and may vary. Check with your local city for current fees.

Data: Municipal Permit Fee Schedules, SBA Small Business Startup Research, FDA Food Safety Modernization Act Requirements, Commercial Insurance Premium Data

Last updated: March 2026

How we calculate this · Verify current permit requirements with your city before applying. Requirements change without notice.

Embed this calculator

Add this free calculator to your website or blog — no signup required.

<iframe
  src="https://foodtruckcost.com/permit-costs?embed=true&utm_source=embed&utm_medium=iframe&utm_campaign=widget"
  title="Food Truck Permit Fees by City: $280–$17,000 (2026)"
  width="100%"
  height="520"
  style="border:none; border-radius:8px; box-shadow:0 1px 4px rgba(0,0,0,.12);"
  loading="lazy"
  allowtransparency="true"
></iframe>