Giveaways dashboard
Run fair, repeatable giveaways. Pick prizes, set duration and winner counts, lock down requirements, and let the bot draw winners with a verifiable seed. Reroll, cancel, or end early when you need to.
Before you start
A few things to line up so the first giveaway runs cleanly.
- The Giveaways module is enabled on the server.
- You hold giveaways.view, plus giveaways.manage for create/edit/end actions.
- A target announce channel exists with Send Messages and Embed Links for the bot.
- Optional: a separate log channel where entry/winner events are recorded.
- For role-restricted giveaways, the required role(s) already exist.
What you'll see
Five tabs along the top. Most of the daily work happens on the first one.
Giveaways tab
The active workspace. Includes a quick-create card and the table of giveaways.
The quick-create card
The prize text shown in the embed (max 240 chars).
Example: Steam $20 Gift Card
Number of distinct winners drawn. Bounded by the per-giveaway max in Settings.
Example: 3
Optional flavour text shown beneath the prize (max 1024 chars).
A number plus minutes/hours/days. Combined into milliseconds for the API.
Example: 48 hours
Optional image to attach to the embed.
None, Role required, No bots, Min account age, Min server tenure, or Custom.
Strict (block at entry), Advisory (warn but allow), Off.
Used by the matching preset; ignored otherwise.
Days a member must be in the server before they can enter.
How long a winner has to react/DM-claim before forfeiting.
Example: 48 hours
When DM is closed: post in channel, skip the winner, or retry later.
Whether to show the winners' names publicly in the result message.
DM the winner privately instead of pinging in channel.
Pick from preset swatches \u2014 the chosen hex shows next to the swatches.
The full Create / Edit modal
- Searchable Host picker \u2014 attribute the giveaway to any server member.
- Channel picker for the announce channel.
- Multi-select for required and blocked roles when using Custom requirements.
- Toggles for Require verified, Require booster, and Exclude bots.
- An Announce toggle to skip posting if you only want a silent test.
The giveaway table
- SCHEDULED
- Will start at a future time. Edit and Cancel are available.
- RUNNING
- Currently accepting entries. Edit, End early, and Cancel are available.
- ENDING
- Drawing in progress \u2014 winners are being selected.
- ENDED
- Finished. Reroll is available to draw new winners.
- CANCELLED
- Cancelled by a manager \u2014 no winners drawn.
Entries tab
Inspect who joined which giveaway. Layout is a three-column grid.
Pick a giveaway
The entries table
- Username / display name and user ID.
- Join time relative to giveaway start.
- Eligibility status (eligible / advisory warning / blocked) when you ran with a non-OFF policy.
- Whether the entry was kept or stripped during the draw (e.g. for failing a requirement).
Analytics tab
Trends and ratios across the last 7, 30, or 90 days.
Date range pills
KPI cards
- Total giveaways in the range.
- Active right now.
- Entries (N days) \u2014 sum across all giveaways.
- Winners (N days) \u2014 total winners drawn.
Charts and breakdowns
- Line chart: entries over time across the range.
- Top hosts: a bar list of which managers ran the most giveaways.
- Activity card with average entries per giveaway, win rate, completion rate, and average winners per draw.
Audit tab
Every change to every giveaway, with a per-giveaway filter.
Filter and refresh
- Use the dropdown to scope to a single giveaway, or leave it on All giveaways.
- The Refresh button re-pulls the latest changes.
- Pagination buttons sit beneath the table, paged 100 entries at a time.
Columns
Settings tab
Server-wide defaults plus the safety knobs.
| Setting | Type | Default | Description |
|---|---|---|---|
| Default requirements preset | Dropdown | NONE | Preset applied to new giveaways unless overridden. |
| Eligibility policy | Dropdown | STRICT | How violations are handled: STRICT, ADVISORY, OFF. |
| Default winners | Number | 1 | Pre-fill for the winners field. |
| Default duration | Duration | 24 h | Pre-fill for duration. |
| Default claim window | Duration | 48 h | Pre-fill for the claim window. |
| Default DM fallback | Dropdown | POST_IN_CHANNEL | Behaviour when a DM cannot be delivered to a winner. |
| Default public winner list | Toggle | On | Whether new giveaways announce winners publicly. |
| Default private delivery | Toggle | Off | Whether new giveaways DM the prize details to winners. |
| Default embed colour | Color | None | Optional swatch applied to new giveaways. |
| Announce channel | Channel | None | Default channel for new giveaways. |
| Log channel | Channel | None | Channel where entry / winner events are mirrored. |
| Manager roles | Multi-select | Empty | Roles allowed to manage giveaways without server admin. |
| Max concurrent giveaways | Number | 5 | Cap on simultaneously running giveaways. |
| Max winners per giveaway | Number | 20 | Hard ceiling on winner count. |
| Entrant soft cap | Number | 10000 | Soft warning when a giveaway exceeds this entrant count. |
| Join cooldown (ms) | Number | 2000 | Per-user cooldown between rapid entry presses. |
| Burst cap | Number | 20 | Max joins allowed inside the burst window. |
| Burst window (ms) | Number | 5000 | Window size for the burst cap. |
| Card update interval (ms) | Number | 5000 | How often the giveaway embed re-renders entrant counts. |
| Min entry count delta | Number | 5 | Skip embed updates that change the count by less than this. |
Common tasks
Three workflows to get you to a clean first run.
Schedule a 24-hour giveaway
Open DashboardGiveawaysGiveaways.
- Click the Create giveaway card to expand the quick-create.
- Set Prize and pick Winners = 1.
- Set Duration = 24 and Unit = hours.
- Pick a requirements preset (NO_BOTS is a safe default).
- Click Create. The full modal opens \u2014 confirm the channel, host, and embed colour, then save.
End a giveaway early and pick winners
Open DashboardGiveawaysGiveaways.
- Find the giveaway in RUNNING state. Click End on its row.
- Confirm in the dialog. The state moves to ENDING while winners are drawn.
- The row settles to ENDED. Click Reroll if you need a different winner pool.
- Switch to Audit to confirm the action was logged with your name.
Restrict entries to verified members with a role
Open DashboardGiveawaysGiveaways.
- Click Create giveaway. Pick Custom as the requirements preset.
- In the modal, add the required role(s) under Custom requirements.
- Toggle Require verified on.
- Set Eligibility policy to STRICT so unverified members are rejected at entry.
- Save the giveaway. Use the Entries tab to confirm the eligibility column reads correctly.
Troubleshooting
Most issues map to permissions, requirement presets, or throttling.