Blog

Work Anniversary Message Templates That Don't Feel Like a Form Letter

Use these as scaffolding, not scripts

Every template below is a starting structure. The parts in bold are the parts you replace. The parts that aren't bold are the load-bearing rhythm of a message that doesn't read like a form letter.

If you post any of these unedited, the audience will know. The whole point of an anniversary message is that it sounds like a teammate wrote it for this specific person. That requires you to actually know one specific thing about them.

A working pattern: skim their last quarter of Slack messages or a recent project before you write. The detail you'll find is usually better than anything you'd invent.

1-year anniversaries

The hardest one to write, because most teams skip it. Don't skip it. The 1-year mark is when teammates decide whether they're settling in for the long haul, and a good message at month 12 has outsized impact.

Template 1A — for an IC who shipped real work

One year ago today, {name} joined the team. Since then they've {specific shipped thing} and somehow made {recurring annoying problem} stop being a problem the rest of us have to think about. Year one is the hardest one. Glad you're here, {name}.

Template 1B — for someone whose impact is hard to point at

A year of {name} today. The kind of teammate whose work shows up as everyone else's work going better — {specific example: faster reviews, calmer standups, better-written tickets}. The numbers can't fully measure that, but the team feels it. Thank you for the year.

Template 1C — for a manager or lead

One year of {name} running {team or function}. In that time the team has {specific outcome — shipped X, hired Y people, halved Z} and the meetings have somehow gotten shorter. That's a hard combination. Cheers to year one, {name}.

5-year anniversaries

Five years is the milestone where companies tend to under-celebrate. Most "five-year" recognition gets a Slack post and a logo'd notebook. The post deserves more thought.

Template 5A — for a long-tenure IC

Five years of {name} on the team. Five years is "I have made this my career, not my job." In that time you've {specific arc — went from X to Y, led Z initiative, mentored A people} and become the person we all check with when {recurring question they're the answer to}. Here's to five.

Template 5B — for someone who's grown into multiple roles

{name} joined five years ago as {original role}. Today they're {current role}, and along the way they've also {adjacent thing they did — built X, owned Y, mentored Z}. People often say "I grew here" — {name} is the person who actually means it. Five years strong.

Template 5C — for a culture-carrier

Five years of {name}. There are people who do their work well, and there are people who make the team feel like a team. {name} has been doing both for half a decade — {specific example: organizing offsites, running the book club, the person who actually replies to new hires}. Year five looks good on you.

10-year anniversaries

A decade is rare and getting rarer. The post should reflect that. Don't be shy about length here.

Template 10A — for a tenured leader

Ten years of {name}. Ten years means {name} has seen {specific era — three product pivots, two re-orgs, the move to remote, the COVID era} and stayed. They've built {specific function or team}, hired {N} people who are still here, and shipped {milestone work}. A decade of decisions to keep showing up. Thank you, {name}.

Template 10B — for a quiet decade-er

Ten years on the team for {name}. Some teammates make their decade look loud; {name} has spent a decade making everyone else's work look easier. {Specific example — keeping the docs sharp, the on-call calm, the standups short}. The kind of tenure that builds a company. Congratulations, {name}.

15-year anniversaries

If you have someone hitting 15, your company is probably old enough that the message should reference institutional history. Lean into that.

Template 15A

{name} has been at {company} longer than most companies exist. Fifteen years is {specific era reference — three CEOs, the pivot from X to Y, the time we all moved to Slack}. Through all of it, {name} has been {specific consistent role they've played}. We're a different company now, and {name} is one of the reasons it still feels like the same one. Cheers, {name}.

20-year and 25-year anniversaries

These should not be Slack-only. Post in Slack, yes, but pair the post with a real moment — a card, an in-person mention, a leadership note. The Slack post is the public marker; the rest is the human one.

Template 25A

Twenty-five years of {name}. A quarter century. Most companies don't last that long. {name} joined when {specific historical reference — the founding team was N people, the product was different, the office was somewhere else} and is still here, still doing {current scope}, still {specific characteristic they're known for}. There aren't enough words. Thank you, {name}.

What to avoid

A short list of phrases that reliably make anniversary messages feel like a form letter:

  • "Here's to many more!" — generic, says nothing.
  • "We're so lucky to have you" — too soft, no specificity.
  • "Thanks for all you do" — the anti-detail.
  • "You're a rockstar / ninja / wizard" — has been corporate cringe since 2017.
  • Any sentence with "delight" or "empower" or "passionate."

The pattern: replace generic warmth with one specific fact. "Thanks for all you do" becomes "thanks for the way you've kept the on-call rotation calm for the last two years." Specificity is warmth.

What to do if you're going to post a lot of these

If your team is over 100 people, you're going to see 1–3 anniversaries a week. Writing each one fresh by hand stops being feasible. The two paths:

  1. Run a recognition tool that handles cadence + tone. Cake Day generates fresh anniversary shoutouts on the day, in the right channel, in the right timezone. The Pro plan lets you feed in your team's voice so the messages match how your team actually talks.
  2. Block 15 minutes a week and write them yourself. A reasonable cadence for a 200-person company is to draft the next week's anniversaries every Monday. You'll need 30 seconds per person if you've worked with them, 5 minutes if you haven't.

Either approach beats the spreadsheet-with-templated-paste pattern, which always decays. We've written about why birthday and anniversary spreadsheets always die — the same dynamic applies here.

See also

Frequently asked

Should we celebrate the 1-year work anniversary?

Yes — and most companies don't, which is precisely why it matters. Year one is when teammates decide whether they're settling in. A specific, warm post at month 12 carries outsized signal that this team notices its people. Skipping it sends the opposite signal.

How long should an anniversary message be?

Two to four sentences for 1- and 3-year anniversaries. Three to six for 5- and 10-year. For 15+ years, length is fine if every sentence earns its space. Length is never the point — specificity is.

Should anniversary messages mention the salary or promotions?

No. Anniversary recognition is public and emotional; comp is private and structural. Mentioning a promotion is fine if it's already been announced; mentioning salary is never appropriate in a public recognition post.

What about 7-year and 12-year anniversaries — are those worth marking?

Yes, but with the same energy as 5 or 10. The "round number only" pattern misses the point — every year someone chose to stay is a year worth noting. Cake Day posts every anniversary by default; round-number-only is a dated practice.

How do we handle anniversaries for teammates who don't want public recognition?

Always default to opt-out. A teammate should be able to remove themselves from public anniversary posts with one command, no conversation required. Cake Day uses `/cakeday optout` for exactly this. The opt-out rate on healthy teams is 1–2%; if it's higher, the tone of the messages is the issue.