🪰417,100 violations tracked across 67 Florida counties
Back to Blog
gradesmethodologydatatransparency

How We Built a Fair Restaurant Grading System

I
InspectFL Team
· March 12, 2026

Florida’s DBPR inspects every restaurant in the state — but they don’t assign grades. You get a list of violations, a disposition, and that’s it. No letter grade, no score, no quick way to compare one restaurant to another.

We thought that should change. But building a grading system that’s actually fair turned out to be harder than we expected.

The Problem With Simple Counting

Our first approach was obvious: count the critical violations, assign a letter grade. Zero to two? That’s an A. Eleven or more? That’s an F.

It worked — sort of. But we quickly noticed a problem.

The unfair scenario:

A restaurant gets cited for 12 critical violations in July. They take it seriously, overhaul their kitchen, retrain staff, and pass their next 3 inspections with zero violations. Under a flat count? They're still an F. All that improvement means nothing.

That didn’t sit right with us. A restaurant that cleans up its act should see that reflected in their grade. Punishing places forever for past mistakes doesn’t help anyone — not the restaurant, not the consumer.

What We Considered

We spent a lot of time researching how other cities and platforms handle this:

Option 1: Only Count the Last Inspection

Some cities do this — your grade is based solely on your most recent inspection. Simple, but flawed. One bad day tanks your score. One good day hides months of problems. Too volatile.

Option 2: Rolling Window (Last 6 Months Only)

Ignore everything older than 6 months. Clean slate every half year. Better — but it felt too binary. A violation from 5 months ago and one from 5 months and 1 day ago shouldn’t be treated completely differently.

Option 3: Weighted Time Decay ✅

This is what we landed on. Instead of a hard cutoff, violations gradually lose weight as they age:

1.0×
Last 3 months
Full weight
0.5×
3–6 months ago
Half weight
0.25×
6+ months ago
Quarter weight

This means a violation from last week hits your score 4× harder than one from 8 months ago. Old problems fade. New problems matter most. That feels right.

Severity Matters Too

We also realized that not all violations are equal. A critical violation — like unsafe food temperatures — poses a far greater health risk than a minor one like a missing sign. So we weight each violation by severity:

3 pts
Critical
2 pts
Major
1 pt
Minor

This means a single critical violation (3 pts) has the same impact as three minor violations (1 pt each). That proportionality makes the grades far more meaningful — a restaurant with a few missing signs shouldn’t be penalized the same way as one with unsafe food temperatures.

Clean Inspections Count Too

We didn’t stop there. We realized that the system only punished restaurants for violations but never rewarded them for passing clean. A restaurant that passes 3 inspections in a row with zero violations deserves credit for that.

So we added a clean inspection bonus: every inspection with zero violations adds points back to the score, using the same time-decay scale:

+1.0
Last 3 months
+0.5
3–6 months ago
+0.25
6+ months ago

The score can never go above 100. But we took it one step further.

Consecutive Streak Multiplier

One clean inspection could be luck. Three in a row is a pattern. So we reward consistency — each consecutive clean inspection multiplies the bonus:

1.0×
1st clean
1.5×
2nd in a row
2.0×
3rd in a row
2.5×
4+ (capped)

The streak resets the moment a violation is found. So a restaurant can’t coast on old clean inspections — they have to keep it up.

This means a restaurant on a 4-inspection clean streak in the last 3 months gets +2.5 per clean inspection instead of +1.0. That’s a massive reward for sustained excellence.

How It Works in Practice

Let’s walk through a real example:

🍽️ Example Restaurant
March 2026 — ✅ Clean inspection +1.0
Feb 2026 — 2 critical + 1 major (2×3 + 1×2) × 1.0 = −8.0
Oct 2025 — 3 critical + 2 minor (3×3 + 2×1) × 0.5 = −5.5
July 2025 — 4 critical + 3 major (4×3 + 3×2) × 0.25 = −4.5
Score 100 − 8 − 5.5 − 4.5 + 1 = 83 → Grade C

Under a flat counting system, this restaurant would look terrible — 9 critical violations, 4 major, and 2 minor across three inspections. But the weighted system recognizes that older violations matter less, and that clean March inspection earned a point back. Two more clean inspections and they'd be a Grade B.

Why All Violation Types Count

DBPR categorizes violations into three severity levels: critical (codes 01–24), major (codes 25–42), and minor (codes 43–58).

We weight all three severity levels because they each tell you something meaningful about a restaurant’s operations. Critical violations — unsafe food temperatures, cross-contamination, handwashing failures — carry the most weight at 3 points each, because they pose direct health risks. But a restaurant racking up major violations (2 pts each) for poor sanitization or pest control issues isn’t running a tight ship either. Even minor violations (1 pt each) add up and paint a picture of how seriously management takes food safety.

The severity weighting ensures the system is proportional: a single critical violation hurts three times as much as a minor one. That feels right — a missing sign shouldn’t tank a score the same way unsafe chicken storage does.

The Grade Scale

The score maps to a letter grade on a 0–100 scale:

A
95–100
B
85–94
C
70–84
F
0–69

The Current Grade Distribution

Here’s how Florida’s 60,724 restaurants break down under the current system:

Grade A
46.9%
Grade B
31.0%
Grade C
16.0%
Grade F
6.1%

Nearly half of Florida restaurants earn an A, and only about 6% receive an F. The restaurants that still have F grades are the ones with recent, significant violations across all severity levels. That’s a meaningful signal.

Our Commitment to Transparency

We’re telling you all of this because we believe grading systems should be transparent. You deserve to know exactly how a grade is calculated — not just what the letter is.

If you want to dive deeper, every restaurant page on InspectFL shows the full inspection history with dates, so you can always see the raw data behind the grade.

We’ll keep refining this system as we learn more. If you have feedback or ideas, we’re listening.

Learn more about how inspections work →

Related reading: Understanding Florida restaurant inspection grades · The 5 most common critical violations · Chain vs. local: who’s really cleaner?

Want to check a restaurant?

Search any Florida restaurant's inspection history and grade.

Search Restaurants
Share this article: Facebook Post Reddit

Comments

Loading comments…