Birthday and Loyalty PTO Bonus Policy Guide
An HR admin's guide to writing and configuring birthday and loyalty PTO bonus policies in BreezeLeave: trigger rules, one-time versus annual, and how it shows up on the balance.

An HR admin opens the benefits review and the CEO asks the same question they ask every year: "Are we still giving people their birthday off?" The answer is yes, but the spreadsheet that tracks who got the day and who did not is held together by a column nobody is sure how to recalculate. A new joiner whose birthday landed in week three of their tenure already missed it. A five-year anniversary on a Saturday went unnoticed. These are the small bonuses that disappear when they are tracked by hand.
This article is for the HR admin who wants the birthday and loyalty bonus to live as a rule, not as a recurring calendar reminder. In BreezeLeave the rules engine credits the right number of days on the right trigger, the balance breakdown shows where the bonus came from, and a one-time versus annual choice decides whether the day repeats every year.
What a bonus PTO policy actually rewards
Bonus days are a small benefit with a real signal value. They tell employees the company sees them as people with anniversaries and birthdays, not as headcount line items. Two common forms cover most policies:
- Birthday bonus. An extra day awarded each year on or around the employee's birthday. The day comes from the date of birth on the employee profile.
- Loyalty bonus. An extra day or two awarded at tenure milestones, typically the 1-year, 3-year, 5-year, or 10-year work anniversary. The trigger is the hire date on the employee record.
Both look identical to the employee. A few extra days appear in the balance with a reason attached. Both look different to HR. One runs annually for everyone with a date of birth, the other fires at specific tenure marks for a smaller group each year.
One-time bonus or annual bonus
The single biggest design decision is whether the bonus repeats. BreezeLeave supports both, and the choice should be explicit in the policy document so the rules engine and the offer letter say the same thing.
| Bonus type | Trigger | Recurrence | Typical day count |
|---|---|---|---|
| Birthday | Date of birth | Annual | 1 day |
| Loyalty (one-time) | N-year anniversary | Fires once per milestone | 1 to 3 days |
| Loyalty (annual) | Each year after N years | Annual once tenure threshold is met | 1 day |
Many companies start with a one-time milestone bonus and a recurring birthday bonus. That combination keeps the math simple and the message clear: the birthday is yours every year, the anniversary marker is yours when you cross the line. Treat the choice as a policy decision before turning it on in the rules engine.
Which inputs drive the rule
Two fields on the employee record do the heavy lifting:
- The date of birth, used by the birthday bonus.
- The hire date, used by the loyalty bonus.
Whatever happens in the rules engine, those two fields decide who qualifies and when. The daily sync checks each employee's date of birth and hire date against the rules and credits the bonus on the trigger date. A bonus that does not appear is almost always a missing field on the profile.

What the employee sees
Bonus days appear in the balance breakdown alongside accrual and carryover. The reason column says where the day came from, which removes the usual question on day one: "why does my balance show 26 days when policy is 25?"
A balance breakdown for a four-year employee in June might read:
- Base accrual: 22 days
- Birthday bonus (May 14): 1 day
- Carryover from last year: 2 days
- Total: 25 days
The same breakdown is what payroll sees on the export. If a bonus needs to be reversed (for example, a probation employee who left before the loyalty milestone landed), the adjustment goes through the same ledger. The vacation adjustments article covers when to log a reversal rather than edit the rule.
Edge cases worth deciding before the rule goes live
Four situations come up in every birthday or loyalty policy. Decide once, document, then turn the rule on.
- Leap-year birthdays. An employee born on February 29 needs a fallback date. Most companies pick February 28 in non-leap years. Note it in the policy.
- New hires whose birthday already passed. Some companies pro-rate the first-year birthday bonus, others wait until the next calendar year. Pick one and apply it consistently.
- Leavers who pass the milestone in their notice period. Decide whether the loyalty bonus credits during the notice period or only if the employee is still in seat on the anniversary date.
- Part-time employees. A 60-percent role usually receives a pro-rated bonus. Confirm whether the rule pro-rates automatically or treats the bonus as a flat day for everyone.
How bonuses interact with the other rules
Bonus days share the rules engine with seniority accrual, carryover, and approval rules. The interactions are usually clean, but worth a quick scan during setup:
- Seniority accrual still runs. The bonus stacks on top of any tenure tier the employee qualifies for. The seniority accrual article covers the layering rules.
- Carryover caps apply to bonus days. If the policy caps carryover at five days, a birthday day taken in February counts toward that cap if it carries to next year.
- Approval rules treat bonus days as regular leave. A birthday day off still goes through the approval chain unless the auto-approval rule covers it.
A short policy template
A working policy fits in five lines. Adapt the day counts and milestones to the company.
Every employee receives one additional day of paid leave on their birthday each calendar year. Employees who reach a 3-year, 5-year, or 10-year work anniversary receive one additional day of paid leave in the calendar year of the milestone. Birthday bonuses apply to active employees on the day of the birthday. Loyalty bonuses are credited on the anniversary date. Bonus days appear in the balance and follow the regular request and approval process.
The matching configuration in BreezeLeave is two toggles and a day count per rule. Once live, the rules engine handles the rest. Birthdays fire each calendar year, loyalty milestones fire on the anniversary, and payroll reads the bonus days from the same balance export as the rest of the leave types.
Configure birthday and loyalty bonuses in BreezeLeave
The rules live under the rules engine. To enable them:
- Open Settings and find the Bonuses section in the rules engine.
- Toggle the birthday bonus on and set the day count (usually 1).
- Add loyalty milestones with the year threshold, day count, and recurrence (one-time or annual).
- Confirm part-time pro-rating behaviour matches the policy.
- Save. The next daily sync runs the rule against every employee record.
Build approval and accrual rules in BreezeLeave by opening the rules engine settings and configuring the birthday and loyalty bonus alongside auto-approval and seniority. For a longer breakdown of bonus mechanics, the birthday and loyalty bonus feature post covers the underlying flow.
