Birthdays

Members register their birthday once with /birthday set, and the bot wishes them a happy one on the day, in the channel you choose — with an optional temporary birthday role.


🎂 How it works

  1. Enable Birthdays and open the Birthdays page.
  2. Pick an announcement channel, an hour and a timezone. Nothing is announced until a channel is set.
  3. Compose the message. Tell your members to run /birthday set.

On the day, the bot posts your announcement, hands out the birthday role if you configured one, and takes it back when the duration lapses.


🗓️ One birthday, every server

A member's date is stored once for their Discord account, not once per server. Someone who already registered their birthday on another server running YAWBDB types nothing — running /birthday set here simply opts them in.

That means:

Nobody sees a member's birthday on a server they did not opt into.


⌨️ Member commands

Command What it does
/birthday set Saves the date. Day, month, and an optional birth year.
/birthday get Shows your birthday, or another member's if they opted in here.
/birthday next Lists the upcoming birthdays on this server.
/birthday remove Stops announcing your birthday on this server.
/birthday forget Deletes your birthday from YAWBDB entirely.

Every reply is private — only the person who ran the command sees it. The announcement on the day is the only thing that is ever public.

The birth year is optional and only ever used to show an age. A member who leaves it out simply never has an age shown.


⚙️ Settings

Setting What it does
Announcement channel Where the message is posted. Required.
Announce at / Timezone The local hour the day's birthdays go out. The window stays open for two hours after that time.
Role to mention Pinged alongside the announcement. Optional.
Birthday role Handed out on the day and removed automatically. Optional.
Role duration How many hours the birthday role is kept, from 1 to 168 (a week).
Minimum days in server A member who joined more recently than this is skipped for the year.
Group above Past this many birthdays on the same day, they go out as one message instead of several.
Show age Displays the age — only for members who volunteered their birth year.

Why the two-hour window? The day's announcements only go out between your chosen hour and two hours later. Outside it, nothing is posted — so a member who sets their date to "today" in the evening waits for next year rather than triggering an instant ping.


✍️ Writing the announcement

The message is composed with the same editor as the Embed Builder: a plain text line above, a full embed below, live preview on the right.

These placeholders work in the text and anywhere in the embed — title, description, fields, footer:

Placeholder Becomes
{mention} A mention of the member, or of all of them on a grouped message
{user} The same as {mention}
{age} The age they are turning. Blank on a grouped message, and blank if they didn't share a birth year or Show age is off
{count} How many members are being celebrated

If you leave both the message and the embed empty, the bot falls back to a plain "🎂 Happy birthday @member!" rather than posting nothing on someone's birthday.

Announcements never ping @everyone or @here.


🛡️ Nobody can farm the spotlight

Birthday announcements are a mention in a public channel, so they are worth abusing. Several things stop that:

If a member genuinely mistyped their date and is now locked, staff can lift the lock from the Birthdays page.


🧑‍💼 The panel side

The Birthdays page lists everyone who opted in, ordered by how soon their birthday comes round, with a badge for members who are locked or already announced this year.


🏆 Birthdays and Leveling

If Leveling is enabled, the Reward Graph gains an On birthday trigger. It fires once a year per member, right after their announcement goes out.

Chain it into any action: grant bonus XP, give a personal XP multiplier for the day, assign a role, send a DM. Like every cross-feature trigger, the node stays locked in the palette until Birthdays is enabled.


✅ Permissions

Birthdays needs the baseline bot permissions (View Channels, Send Messages, Embed Links) in the announcement channel, plus Manage Roles if you use a birthday role. See Feature permissions.

The bot's role must sit above the birthday role in Server Settings → Roles, otherwise Discord refuses to assign it.

To ping a role, either make that role mentionable or grant the bot Mention @everyone, @here, and All Roles.


💡 Best practices


❓ Nothing was announced