VetCostCalc
$

Estimates adjust to your income and location. Not stored on our servers.

Vet Cost by City 2026: 50 Major US Metro Areas Compared

Annual vet spending ranges from $683/year in El Paso to $1,333/year in San Francisco. See how your city compares across all 50 metros.

Most Expensive
San Francisco
$1,333/yr avg
National Average
$810
per year
Most Affordable
El Paso
$683/yr avg
City Annual Avg
San Francisco CA $1,333/yr
San Jose CA $1,248/yr
Honolulu HI $1,197/yr
New York City NY $1,157/yr
Los Angeles CA $1,147/yr
Washington DC DC $1,127/yr
San Diego CA $1,115/yr
Boston MA $1,096/yr
Long Beach CA $1,078/yr
Anaheim CA $1,041/yr
Seattle WA $987/yr
Baltimore MD $971/yr
Sacramento CA $958/yr
Denver CO $935/yr
Fresno CA $928/yr
Chicago IL $909/yr
Portland OR $908/yr
Aurora CO $899/yr
Bakersfield CA $879/yr
Minneapolis MN $878/yr
Colorado Springs CO $869/yr
Philadelphia PA $867/yr
Atlanta GA $839/yr
Milwaukee WI $829/yr
Tampa FL $819/yr
Las Vegas NV $818/yr
Austin TX $813/yr
Virginia Beach VA $810/yr
Jacksonville FL $794/yr
Phoenix AZ $793/yr
New Orleans LA $789/yr
Raleigh NC $779/yr
Nashville TN $777/yr
Mesa AZ $777/yr
Charlotte NC $769/yr
Dallas TX $769/yr
Houston TX $760/yr
Kansas City MO $758/yr
Arlington TX $758/yr
Columbus OH $758/yr
Tucson AZ $754/yr
Fort Worth TX $748/yr
Indianapolis IN $741/yr
Louisville KY $739/yr
Omaha NE $734/yr
Memphis TN $721/yr
San Antonio TX $715/yr
Albuquerque NM $699/yr
Oklahoma City OK $688/yr
El Paso TX $683/yr

Annual average vet spending per pet (dogs and cats combined). City figures are estimates based on AVMA data and local cost-of-living adjustments. Individual practice prices vary significantly within each city.

Why Vet Costs Differ So Much by City

Vet costs in San Francisco and New York City run 80–120% above the national average — a routine exam costs $200–$280 versus $75–$120 in mid-size Midwestern cities. Commercial rent, staff wages, and local competition drive the gap more than care quality. Select your city below to see exact local rates for common procedures.

The same wellness exam that costs $58 in San Antonio runs $107 in San Francisco — not because the care is different, but because clinic overhead is radically different. Commercial rent in San Francisco is 15–20x higher than suburban Texas. Vet tech wages track the local cost of living. Those costs show up on every invoice.

The gap compounds over a lifetime. A dog in San Francisco costs $6,000–$7,000 more in vet care over a 12-year lifespan than the same dog in Indianapolis — assuming no emergencies. Both dogs get the same vaccines, the same dental care, the same diagnoses. Geography is the only difference.

Most Expensive Cities

San Francisco, New York City, Washington DC, Los Angeles, and San Diego are the priciest markets for routine vet care. All combine high wages, expensive real estate, and dense urban practice environments. Emergency care in these cities costs proportionally more — an ER exam runs $230–$275 in SF and NYC versus $146–$154 in San Antonio and Indianapolis.

Most Affordable Major Cities

San Antonio, Indianapolis, and Columbus offer the best value among major US cities. All three sit 8–12% below the national average. Columbus also has Ohio State's College of Veterinary Medicine, which offers competitive rates on specialist procedures. San Antonio's military community and competitive private market keep pricing disciplined.

How to Use This Data

City averages are starting points, not guarantees. Within any metro, prices vary 30–50% between the most and least expensive practices for the same procedure. Suburban clinics typically run 20–35% below city-center practices. Veterinary teaching hospitals (where available) offer specialist care at competitive rates.

Embed this calculator

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

<iframe
  src="https://vetcostcalc.com/vet-city-costs?embed=true&utm_source=embed&utm_medium=iframe&utm_campaign=widget"
  title="Vet Cost by City 2026: 50 Major US Metro Areas Compared"
  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>