Campaign type: Giveaway (Post) - Waiviogit/waivio GitHub Wiki
Campaign type: Giveaway (Post). Quickly and easily add a new campaign directly in the editor.
The user creates a campaign in the editor and publishes the post. The campaign is created in a new modal window within the editor, can be edited, and will be activated once the user publishes the post. Once the campaign expiry date is reached, all participants will be checked for compliance with the giveaway requirements, and winners will be selected randomly. The number of winners depends on how many rewards the campaign can provide within its budget (for example, if the budget is 100 and each reward is 25, there will be 4 winners). After the winners are selected, a new comment will be automatically posted under the original post mentioning the winners, and reward obligations will be generated for the sponsor to fulfill.
Giveaway in Editor
- In the post editor, introduce a new orange button labeled “Add a Giveaway” placed directly above the "Ready to Publish" button.
- Clicking this button opens a modal window for giveaway configuration.
Giveaway Modal Window
Clicking "Add a Giveaway" opens a modal window with giveaway campaign settings. The modal includes only the essential fields for creating a campaign:
Basic Details
- Name – Text field to enter the campaign name.
- Reward (per winner, USD) – The fixed amount awarded to each winner.
- Number of winners - The number of users who will receive the reward. Each winner receives the full amount specified above in the Reward field. For the back-end, the campaign budget field will be sent (as in a standard campaign), where: Campaign Budget = Reward × Number of Winners
- Payment currency – Currently fixed to WAIV.
Expiration
- Expiry date – Date selector to define when the campaign ends. By default, it is set to 7 days from the current date, with a maximum allowed duration of 30 days. The selector should allow users to specify both the date and the exact time.
- Time zone - A dropdown menu for selecting the preferred time zone. By default, it uses the user's current time zone.
Giveaway Requirements Participants must fulfill any of the following (checkboxes, all optional): ✅ Follow the author ✅ Like the post ✅ Leave a comment ✅ Tag 2 friends in a comment ✅ Re-blog the post
Eligible Users 🔘 All users: No restrictions. 🔘 Filtered users: Additional eligibility rules (similar to usual campaign creation):
- Minimum Waivio expertise
- Minimum number of followers
- Minimum number of posts
Commissions
- Commissions to Waivio and partners - A field to modify the commission percentage (default is 5%). Works the same as during campaign creation. Validation ensures the value cannot be set below 5%.
Legal
- Checkbox to agree to Terms and Conditions and acknowledge compliance with local laws (British Columbia, Canada).
Action
- Final action button: “Create Giveaway”
The campaign is created in a new modal window within the editor, can be edited, and will be activated once the user publishes the post.
Editor Giveaway Integration (After Creation)
Once the giveaway is created:
- A preview section appears inside the editor instead of "Add a giveaway".
- This section includes:
- A brief line such as “Giveaway time! Your chance to win ${reward} with {winnersAmmount} winners!”
- A breakdown of post requirements
- A summary of user requirements
- A disclaimer stating the sponsor reserves the right to refuse payment in case of fraud, spam, or low-quality content.
- An Edit button allows returning to the modal for changes before publishing.
Text: Join the giveaway for a chance to win ${reward}! To enter: Follow the author Like the post Leave a comment Tag a friend in a comment Re-blog the post User requirements: Available to everyone Sponsor reserves the right to refuse the payment if review is suspected to be fraudulent, spam, poorly written or for other reasons.
Giveaway Post Appearance (After Publishing)
Option 1: In a post on Waivio, it can appear similar to how it looks in the editor — as a separate section with all the necessary information. However, on other platforms (peakd etc.), it should also be displayed fully, possibly as part of the main post content.
Option 2: For all platforms, including Waivio, it will appear the same — as an additional block at the end of the post.
Winner Selection Logic
When the expiry date is reached:
- The system checks which users have fulfilled all selected giveaway requirements.
- It then randomly selects winners from the pool of eligible participants.
- If a selected user is not eligible, the system repeats the random selection and eligibility check until the entire budget is spent.
- The number of winners is calculated as: Budget ÷ Reward per winner.
- After the expiry date, a comment is automatically posted under the original post, announcing the winners.
- Reward obligations are then generated for the sponsor to fulfill the payouts.
Comment system for winners
- After the campaign expiry time, once the winners have been selected, we post a comment under the original post. This comment includes all participants and highlights the winners.
Thanks to everyone who participated in this giveaway campaign from {sponsorNameLink}!
The campaign has ended, and the results are in. Out of all the amazing participants, we’ve randomly selected the winners: @winner1, @winner2, @winner3.
Each winner will receive $25 USD (amount in WAIV) as a reward. Congratulations!
Big thanks to all participants for joining and supporting the campaign: @user1, @user2, @user3 ...
Thank you all for joining and sharing great content!
Keep an eye out for new campaigns, giveaways, and chances to earn more rewards. You can track your current rewards and explore active campaigns [here](https://www.waivio.com/rewards/global).
Keep creating and good luck next time!
- If the sponsor rejects the campaign (after the winners have been selected and the congratulatory comment has been posted), we can edit the comment to reflect the rejection.
- The sponsor can reject individual users, in which case we edit the comment and remove the rejected user.
- If there is only one winner, and they are rejected, we replace the comment with the following text:
Thanks to everyone who participated in this giveaway campaign from {sponsorNameLink}!
Unfortunately, the sponsor has decided not to approve the results of this giveaway, and no rewards will be distributed this time.
We understand this may be disappointing, and we truly appreciate the effort and creativity you put into your content.
We encourage you to keep sharing your ideas and participating in future campaigns. There are always new opportunities to earn rewards and get recognized.
You can track your activity and discover new campaigns [here](https://www.waivio.com/rewards/global).
Thank you again for being part of the community!
Keep creating and stay inspired!
Additional information
- [giveaway / post] Add comments systems for post giveaway #7658
- [giveaway / post] Posts with a giveaway campaign should stand out from other posts. #7680
- [campaign / giveaway] Add a new campaign type: Giveaway (Post) #7646 #7647 #7633
- [edit post / giveaway] The ability to add a giveaway to an existing post in edit mode has disappeared. #7740
- [post / giveaway] replace the text with (1) Eligibility: (2) Sponsor reserves the right to refuse payment if activity is suspected to be fraudulent, spam, of low quality, or for any other reason. #7720
- [profile / post giveaway] The giveaway was added after the post was published via edit. There's a profile card, but the results are empty. The post with the giveaway isn't highlighted, as is typical with giveaway posts. #8080