If you deduct 1 dirham per minute of lateness, you'll end up with two problems: an angry team and bookkeeping migraines for trivial amounts. A bracket-based approach with a built-in grace period works much better.

The model

Late byDaily salary deducted
0–10 min0% (grace)
11–30 min10%
31–60 min30%
61+ min50% (capped)
No-show200% (two days)

Why it works

How to roll it out

  1. Post the bracket on the kiosk (timing.ma does this automatically).
  2. Run it in "warning mode" for one full month: show the late minutes in the punch confirmation but don't deduct. People self-correct.
  3. Start deducting in month two. Most teams see 60–80% of avoidable lateness disappear in the warning month alone.

timing.ma ships with this exact bracket as the default for the Moroccan market. You can edit them per-tenant in Settings → Lateness.