Giveaways

The giveaway system makes it easy to host and manage Discord giveaways. It supports advanced features like role requirements, entry restrictions, customizable embeds, and automatic winner selection.

Core Settings (Config)

Add these to your config to control permissions and behavior:

What these do

  • AllowRoles β†’ Only these roles can use /giveaway (all subcommands). Replace "ROLE_ID" with real IDs.

  • GiveawayStatusCheck β†’ Interval (ms) the bot uses to see if a giveaway ended.

    • Default: 7500 (7.5s)

    • Small servers: 5000–10000 (5–10s)

    • Large servers: 10000–15000 (10–15s)

  • DirectMessageWinners β†’ true is recommended so winners get a DM.


Active Giveaway Embed Options

All Show* flags are true/false and control what the running giveaway shows:

  • Title, Thumbnail, Hosted By, Ends In (countdown), Entries

  • Whitelist/Blacklist roles

  • Minimum Server Join Date / Account Age / Messages

  • Image, Footer

Buttons & Styles

  • Primary (Blue), Secondary (Gray), Success (Green), Danger (Red)

  • Built-ins:

    • Enter (JoinButton)

    • Odds (CheckPercent)

    • Entries (ShowEntries)

    • Show Entrants (ShowEntrantsList, opens a paginated embed)


Ended Giveaway Embed

After a giveaway ends, the EndedGiveaway embed appears. You can toggle:

  • Title, Thumbnail, Image, Winners field, Entries field, Footer


Entrants List Placeholders

Inside the entrants list embed you can use:

  • {prize} – prize name

  • {entrantsList} – formatted list of entrants

  • {totalEntrants} – total count

  • {currentPage} / {totalPages} – pagination info


Commands

/giveaway create

Create a giveaway with all your options in one go.

Required options

  • channel – The channel to post the giveaway in

  • time – Duration (see formats below)

  • winners – Number of winners

  • prize – The prize name

  • hostedby – Who is hosting (type @Username)

Optional restrictions

  • min_server_join_date – Example: January 1 2024

  • min_account_age – Example: January 1 2023

  • min_invites – Integer (minimum invites to enter)

  • min_messages – Integer (minimum messages to enter)

  • whitelist_roles – Mention roles allowed to enter (e.g., @VIP @Boosters)

  • blacklist_roles – Mention roles disallowed (e.g., @Muted)

  • notify – One of:

    • Nobody β†’ notify_nobody

    • Whitelist Roles β†’ notify_whitelist_roles

    • Everyone β†’ notify_everyone

  • extra_entries – Give bonus entries to roles (format: @role:entries @role2:entries)

    • Example: @VIP:5 @Booster:3

Examples

  • Simple daily Nitro:

  • With restrictions and extras:


/giveaway end

End a running giveaway by its Giveaway ID (found in the footer of the embed).

/giveaway reroll

Pick new winner(s) for a finished giveaway. Optionally specify particular users to reroll.


⏲Duration Formats

Use these in the time field:

  • m = minutes β†’ 30m, 45m

  • h = hours β†’ 2h, 12h

  • d = days β†’ 1d, 7d

  • w = weeks β†’ 1w, 2w

  • y = years β†’ 1y

Last updated