> For the complete documentation index, see [llms.txt](https://docs.voicestats.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.voicestats.xyz/dashboard/giveaways.md).

# Giveaways

VoiceStats Giveaways lets server administrators run random draws with optional role, voice-time, and message-count requirements. Every entry represents one equal chance, so members with more entries have a proportionally higher chance of winning.

Open **Manage server → Modules → Giveaways** in the [VoiceStats Dashboard](https://voicestats.xyz/dashboard). You must own the server or have **Administrator** permission in Discord to create or manage giveaways.

## Giveaway Page

The page contains four sections:

* **Active giveaways** shows giveaways that are still accepting entries. From here you can edit, end, or delete a giveaway.
* **Giveaway templates** stores reusable configurations. From here you can create, edit, or delete a template.
* **Scheduled giveaways** shows giveaways that will be created later. From here you can create, edit, or delete a schedule.
* **Ended giveaways** shows completed giveaways in pages of 3. From here you can select new winners when a reroll is needed.

Use **New giveaway** to open the normal creation form. Templates and scheduled giveaways have their own create buttons and management forms.

<figure><img src="/files/3RuPyXcn6X4aJpgjukZH" alt=""><figcaption></figcaption></figure>

## Basic Details

Every giveaway has the following main settings:

* **Prize:** The title shown in the giveaway message. It can contain up to 256 characters.
* **Channel:** The text or announcement channel where VoiceStats posts the giveaway.
* **End time:** Choose an exact date and time, or enter a duration such as `30m`, `10h`, or `1d 12h`. The minimum duration is 1 minute.
* **Winner count:** The number of different members selected when the giveaway ends.
* **Winner role:** An optional role given to the winners when the original giveaway ends.

<figure><img src="/files/BT8BA9YRozuJZfy2weOx" alt=""><figcaption></figcaption></figure>

The **Base template** selector at the top of the creation form is optional. Selecting one copies its saved values into the form so you can review or change them before creating the giveaway. It never creates a giveaway automatically.

<figure><img src="/files/yDQ3W9BtfzDRB5AchuoN" alt=""><figcaption></figcaption></figure>

After creation, VoiceStats posts a giveaway message with **Entry** and **Participants** buttons. Members use **Entry** to join. Pressing it again shows their current entry status and the option to leave. **Participants** displays the members who are currently entered and how many entries each member has.

## Giveaway Appearance

**Embed color** is available on every plan. Choose a color from the reusable color picker or enter its `#RRGGBB` value. New giveaways use the standard VoiceStats giveaway color by default.

<figure><img src="/files/9bj4TFHd15GzYn4prgpl" alt=""><figcaption></figcaption></figure>

Premium servers can also customize the **Entry** button's style and emoji. The style can be Primary, Secondary, Success, or Danger. The emoji picker supports standard Unicode emojis and automatically loads custom emojis from the current server when opened. Select a custom server emoji directly from the picker.

The button label itself is not customizable.

<figure><img src="/files/jZJBx0pMrg9mMshT12Q1" alt=""><figcaption></figcaption></figure>

## Giveaway Templates

Templates save a reusable giveaway configuration without creating or posting a giveaway. A template has a name and uses a **duration** such as `30m`, `10h`, or `1d 12h` instead of a fixed end date and time. The minimum duration is 1 minute.

You can create a template in either of these ways:

* Select **Create template** in the Giveaway templates section and complete its form.
* Complete the normal New giveaway form, select **Save as template**, and enter a template name.

Templates can be created, edited, and deleted only in the Dashboard. Use `/giveaway templates` to view them in Discord. Free servers can save 1 template, while Premium servers can save up to 100.

## Scheduled Giveaways

A scheduled giveaway creates and posts a new giveaway at the selected **start date and time**. Creating a schedule does not post the giveaway immediately.

The schedule form can optionally load a base template in the same way as the normal creation form. You can then change the copied settings before saving the schedule.

Turn on **Repeating** to run the schedule again after a whole-number interval measured in minutes. The minimum repeat interval is 1 minute. Leave Repeating off when the giveaway should run once.

Scheduled giveaways can be created, edited, and deleted only in the Dashboard. Use `/giveaway scheduled` to view them in Discord. This feature requires Premium and currently supports 1 scheduled giveaway per server.

## Entry Requirements

All entry rules are optional. A member must pass every configured rule unless a bypass role applies.

<figure><img src="/files/wJIHpcd0No0YbacxeBGb" alt=""><figcaption></figcaption></figure>

### Required Roles

Choose the roles a member needs before entering. You can require:

* **All selected roles**, which is the default; or
* **Any one selected role**.

### Bypass Roles

A member with any selected bypass role can skip the required-role, required-voice-time, and required-message rules. A blacklist role still prevents entry even when the member also has a bypass role.

### Blacklist Roles

Members with any selected blacklist role cannot enter the giveaway.

### Required Voice Time

Require a minimum amount of total voice time recorded for the member in the server. Enter whole hours and minutes, such as `1h 15m`. The minimum is 1 minute and the maximum is 30,000 hours.

VoiceStats includes the member's currently active voice session when checking this requirement.

### Required Messages

Require a minimum total number of messages recorded for the member in the server. Enter a whole number between `1` and `1,000,000,000`. Messages excluded by the server's bot, member, or channel filters do not count toward this requirement.

## Extra Entries for Roles

Every eligible member normally receives **1 entry**. Extra-entry roles can change that amount in one of two ways.

<figure><img src="/files/Nh0XtvtPUh7GI17VfV2n" alt=""><figcaption></figcaption></figure>

### Highest Role Value — Default

When **Stack role bonuses** is off, each configured number is the member's total entry count. If a member has more than one matching role, only the highest value is used.

Example:

* Role A: 10 entries
* Role B: 20 entries
* A member with both roles receives 20 entries.

### Stack Role Bonuses

When **Stack role bonuses** is on, every matching role is added to the member's normal entry.

Example:

* Normal entry: 1
* Role A: +10 entries
* Role B: +20 entries
* A member with both roles receives 31 entries.

The participant list shows each member's entry count, making these differences visible to the server.

## Role Changes After Joining

**Protect participants** is enabled by default.

* When enabled, later role changes are ignored and do not change or remove entries that members already received.
* When disabled, later role changes can update a member's entry count or remove the member when they no longer meet the rules.

<figure><img src="/files/DqanKxjt8hhW7Bc1Wglt" alt=""><figcaption></figcaption></figure>

If a member is removed because they no longer qualify, becoming eligible again does not automatically rejoin them. They must press **Entry** again. Leaving the Discord server removes the member from active giveaways regardless of this setting.

Role changes are applied when VoiceStats receives them. Changes made while VoiceStats is unavailable are not recalculated later.

If a required, bypass, blacklist, or extra-entry role is deleted from a live-updating giveaway, VoiceStats automatically protects the entries that are already present. It does not rewrite the giveaway's saved role choices.

## Editing an Active Giveaway

The edit form shows all original settings, but only these fields can be changed:

* Prize
* Winner count
* Winner role
* End time or remaining duration
* Embed color and Entry button

The channel and all entry rules stay locked. To use different entry rules, delete the active giveaway and create a new one.

## Ending and Deleting

A giveaway ends automatically at its scheduled time. You can also use **End giveaway** to stop entries immediately and select the winners early.

In Discord, administrators can right-click the giveaway message and choose **Apps → End Giveaway** for the same immediate action without entering a message ID.

When the original giveaway ends, VoiceStats announces the winners in Discord and gives the configured winner role. A member can only occupy one winner position in the same draw.

Only active giveaways can be deleted. Deleting one permanently removes it and attempts to remove its Discord message. Ended giveaways are kept so they can be viewed and rerolled.

## Selecting New Winners

Use **Select new winners** on an ended giveaway when a replacement winner is needed.

Administrators can also right-click the ended giveaway message and choose **Apps → Reroll Giveaway**. This shortcut uses the giveaway's configured winner count and excludes the winners from the previous draw.

The **Exclude previous winners** option is enabled by default. It excludes only the winners from the immediately previous draw. Winners from earlier rounds can be selected again. Turning the option off allows the immediately previous winners to be selected again as well.

Rerolls announce the new winners but do not remove roles from earlier winners and do not automatically give the winner role to the new winners.

## Giveaway Language

* A giveaway created from the Dashboard uses the server language selected under **Manage server → Settings**.
* A giveaway created with `/giveaway create` uses the Discord language of the person who creates it.
* The public giveaway message keeps that language for its lifetime.
* Private button replies, participant pages, and error messages use the Discord language of the member interacting with the giveaway.

## Free and Premium Limits

<table data-search="false"><thead><tr><th>Limit</th><th align="right">Free</th><th align="right">Premium</th></tr></thead><tbody><tr><td>Active giveaways</td><td align="right">5</td><td align="right">100</td></tr><tr><td>Giveaway templates</td><td align="right">1</td><td align="right">100</td></tr><tr><td>Scheduled giveaways</td><td align="right">❌</td><td align="right">✅</td></tr><tr><td>Winners per giveaway</td><td align="right">20</td><td align="right">100</td></tr><tr><td>Maximum duration</td><td align="right">30 days</td><td align="right">180 days</td></tr><tr><td>Required roles</td><td align="right">5</td><td align="right">100</td></tr><tr><td>Bypass roles</td><td align="right">5</td><td align="right">100</td></tr><tr><td>Blacklist roles</td><td align="right">5</td><td align="right">100</td></tr><tr><td>Extra-entry roles</td><td align="right">5</td><td align="right">100</td></tr><tr><td>Entries assigned to one role</td><td align="right">30</td><td align="right">300</td></tr><tr><td>Entry button style and emoji</td><td align="right">❌</td><td align="right">✅</td></tr></tbody></table>

{% hint style="info" %}
See [Premium](/general/premium.md) for the complete VoiceStats plan comparison.
{% endhint %}
