Last updated: July 23, 2022
Gleam has a number of ways to prevent cheaters from entering your campaigns. While we've made this process require as little manual intervention as possible, it is still up to you how stringent you want entries to be.
The Gleam platform is integrated with lots of APIs & social networks, we use these integrations to check that entrants have completed your actions before awarding entries.
As a result, you get more qualified data from your campaigns and peace of mind that the actions you asked for has been completed.
For example, an entrant can't complete a Tweet on Twitter action without Twitter letting us know via API that it's been done. Where possible, we also try to provide you links with proof of the completed action. You can manually verify this again at a later time (e.g. when drawing winners).
Unfortunately, there are a handful of networks that we don't support yet, such as LinkedIn, YouTube and Snapchat.
When a winner is picked, you can always verify their entries manually before finalising the draw. This way you only have to verify the winners that were randomly chosen instead of having to manually run through each entry.
The Gleam platform has a series of fraud detection algorithms that protect your campaign from fake contest accounts, spammers, cheaters and bots. You can see more details on why we flagged down a particular entry by hovering over the
To report a user for suspected fraudulent activity, send us an email at
There will be edge cases where automatic validation fails due to errors or API limits. This is why we offer the option to manually invalidate entries in case you need it.
Once a winner is drawn, you can check that the entry is valid before finalising the draw. If for any reason the winning entry is no longer valid, you can invalidate it and draw another winner.
This is particularly useful if an entrant had completed an action before e.g. subscribe to your newsletter only to have unsubscribed when you check again.
Contestants will not be aware if their actions are marked invalid on the backend. It does not interfere with their experience on the widget.