Live Demo | Add-ons | Assets | Documentation | Code Snippets

GamiPress is the easiest way to gamify your WordPress website in just a few minutes, letting you award your users with digital rewards for interacting with your site.

Easily define the achievements, organize requirements, and choose from a range of assessment options to determine whether each task or requirement has been successfully achieved.

GamiPress is extremely powerful and infinitely extensible. Check out some of the built in features:

3 powerful ways to award your users

GamiPress combines three of the most powerful award systems you could add to your site:

  • Points to automatically award your users for interacting with your site.
  • Achievements to award users for completing all the requirements, sequentially or otherwise.
  • Ranks to let your users climb through the ranks by completing all the rank requirements.

Unlimited ways to define how to award the different points, achievements and ranks

  • Site activity (events based on publishing posts and pages, commenting, daily visits or logging in to your site).
  • Completing specific other achievements, once or a specified number of times.
  • Completing one or all achievements of a specified type.
  • Points thresholds.
  • Admin awarded achievements.
  • Reaching a specific rank.
  • Expending an amount of points.


  • Points Types: Configure as many types of points as you like (Credits, Gems, Coins, etc).
  • Achievement Types: Configure as many types of achievement as you like (Quests, Badges, etc).
  • Rank Types: Configure as many types of rank as you like (Level, Grade, etc).
  • Automatic points awards and deductions: Easily configure automatic ways to award or deduct points to your users.
  • Custom requirements: Define conditional requirements the user needs to meet for unlock any achievement or rank.
  • Time limit requirements: Limit by time period when the user can complete a specific requirement (minutely, hourly, daily, weekly, monthly or yearly).
  • Drag and drop controls: Powerful controls to setup your gamification environment in minutes.
  • Social sharing: Users can share the achievements and ranks they have earned on any social network of their choice.
  • Unlock achievements and ranks using points: Let users to optionally unlock any achievement or rank by expending an amount of points without meet the requirements.
  • Emails: Your users will get notified automatically about new awards.
  • Logs: Flexible log system with support for public and private logs.
  • Open Badges compatible: Connect your site achievements with Badgr or Credly to issue open badges as an official recognition of the skills of your users.
  • Blocks, Shortcodes & Widgets: WordPress-friendly blocks, shortcodes and widgets to show the user points wallet, earned achievements, latest logs, and more.
  • Live shortcode editor: Missing a shortcode parameter? Just press the “GamiPress Shortcode” button and set up any shortcode without a worry.
  • GDPR Support: Support for WordPress personal data exports and deletions.
  • Theme Agnostic: GamiPress works with just about any standard WordPress theme. No special hooks or theme updates are needed.
  • Templates System: Overwritable templates system to allow you customize everything you want through your GamiPress theme folder.
  • Data centralization on Multisite: Centralize all the data on multisite installs and show anything you want on any sub-site.
  • Rest API: Full support to WordPress rest API brings you new ways to connect GamiPress with external applications.
  • Developer-friendly: GamiPress is extremely flexible with plenty of hooks to add custom features and functionalities.

Integrated with your favorites WordPress plugins

GamiPress integrates with a large number of plugins allowing you to add gamification in any environment.

LMS integrations

Other integrations

View all integrations

Powerful add-ons to extend GamiPress is home to some amazing extensions for GamiPress, including:

View all plugins on

If you’re looking for something endorsed and maintained by the developers who built GamiPress, there are a plethora of premium add-ons, the most popular of which include:

View all add-ons


  • A huge number of shortcodes and widgets with a lot of display options.
  • Configure as many points types as you like: Credits, Gems, Coins, etc.
  • Configure as many achievement types as you like: Badges, Quests, etc.
  • Configure as many rank types as you like: Grade, Level, etc.
  • Let users to optionally unlock any achievement or rank by expending an amount of points without meet the requirements.
  • Simple yet powerful admin interface to manage your gamification elements.
  • Drag and drop control to define the requirements for any achievement, points type or rank.
  • Built-in support for Gutenberg including a great number of blocks to place them anywhere.
  • Live shortcode editor appears in the toolbar of all WordPress content editor areas, allowing you to transform any page or post into part of your gamification system without referencing any of the shortcodes.
  • WordPress-friendly widgets to show the user points wallet, earned achievements, latest logs, and more.
  • Configurable email templates to let your users get notified automatically about new awards.
  • Flexible log system with support for public and private logs.


From WordPress backend

  1. Navigate to Plugins -> Add new.
  2. Click the button “Upload Plugin” next to “Add plugins” title.
  3. Upload the downloaded zip file and activate it.

Direct upload

  1. Upload the downloaded zip file into your wp-content/plugins/ folder.
  2. Unzip the uploaded zip file.
  3. Navigate to Plugins menu on your WordPress admin area.
  4. Activate this plugin.


Is GamiPress compatible with any theme?

We built GamiPress so that it will work with modern WordPress themes. GamiPress just adds positional styles which will allow you to better customize everything for your specific needs.

Can GamiPress be easily translated?

Yes, GamiPress is stored in the official WordPress plugins repository where you (and anyone) are able to submit your own translations.

Does GamiPress work with WordPress multisite?

Yes. You can use GamiPress on a WordPress multisite network.

In addition, GamiPress has the ability to centralize all the data when is network wide active.

Does GamiPress work with WordPress rest API?

Yes. GamiPress includes full built-in support to the WordPress rest API.

You can find all information about rest API on this page.

Where can I find documentation about GamiPress?

Check the Getting Started docs where you can start getting familiarized with GamiPress.

Also, we have the tutorials sections where you can find step-by-step guides to accomplish some common task to start working with GamiPress.

Where can I find code snippets to customize GamiPress?

Check our customize section where you can find a huge number of code snippets to help you customize GamiPress.

Where can I find images to customize the GamiPress elements?

Check our assets section where you can find a huge number of resources to decorate your gamification elements to take the design of them to the next level.

Which shortcodes come bundled with GamiPress?

GamiPress comes with the following shortcodes:

In your WordPress admin area, navigate to the GamiPress Help/Support menu where you can find the full list of available shortcodes, including descriptions of all parameters each shortcode supports.

Which widgets come bundled with GamiPress?

GamiPress comes with the following widgets:

  • Achievement: to display a desired achievement.
  • Achievements: to display a list of achievements.
  • User Earnings: to display a list of user earnings.
  • Logs: to display a list of logs.
  • Points Types: to display a list of points types with their points awards and deducts.
  • User Points: to display current or specific user points balance.
  • Rank: to display a desired rank.
  • Ranks: to display a list of ranks.
  • User Rank: to display previous, current and/or next rank of a user.

Do you offer custom development services?

No, We’re unable to provide custom development services, as our focus is developing the core GamiPress plugin, and the official GamiPress add-ons. If you need customization services check our customizations page.

Also, you can check our customize section where you can find a huge number of code snippets to help you customize GamiPress!


March 13, 2021
GamiPress includes a large number of functionalities, all them well structured and well explained in its documentation along with the videos that the team uploads to YouTube. After a bad experience with a similar plugin, GamiPress support team has been a lifesaver helping me all the time to achieve my goals. Thank you so much for creating such a wonderful plugin!
March 12, 2021
There is a lot of potential here, though I am not a developer, I am technical enough to build a buddypress membership site with event booking capability. That said, I've been in back and forth emails with support for two months now and the add-ons still do not work. I have to hire a developer to go in to configure the plugins, and a warning on upwork, several devs have quoted configuration at around $3500. I still believe in trying to make this plugin work, but this is one of the most finicky plugins I've ever used. If it works then it will be worth it for me, but I would not recommend to a lay person.
Read all 233 reviews

Contributors & Developers

“GamiPress” is open source software. The following people have contributed to this plugin.


“GamiPress” has been translated into 3 locales. Thank you to the translators for their contributions.

Translate “GamiPress” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Improvements
  • Prevent incompatibility issues caused by others plugins to the GamiPress licenses and tools screens.


  • Improvements
  • Prevent incompatibility issues caused by others plugins to the GamiPress settings screen.
  • Developer Notes
  • Updated internal libraries.

  • Bug Fixes
  • Fixed incorrect meta value when inserting logs and user earnings (thanks to @persiliao).

  • New Features
  • Added the points column to the user earnings at admin area.
  • Improvements
  • Ensure to flush the plugin cache after import a new setup.
  • Bug Fixes
  • Fixed style issue on GamiPress switches caused by WordPress 5.6 update.
  • Developer Notes
  • Added several filters to the GamiPress_Widget class.
  • Ensure compatibility with PHP 8.
  • Updated internal libraries.

  • Bug Fixes
  • Correctly load post type fields value.


  • New Features
  • New event: Comment on a post of a type.
  • New event: Get a comment on a post of a type.
  • New event: Get a comment on a post of a type marked as spam.
  • New event: Publish a new post of a type.
  • New event: Delete a post of a type.
  • New event: Daily visit a post of a type.
  • New event: Get visits on a post of a type.
  • Added the attribute “achievements_without_points” to the [gamipress_earnings] shortcode.
  • Added the field “Show Achievements Without Points” to the User Earnings block and widget.
  • Improvements
  • Improved the way that User Earnings shortcode, block and widget limits the results based on the parameters configured.

  • Improvements
  • Added stronger escaping functions when inserting logs and user earnings metas.

  • Improvements
  • Added blocks compatibility functions to support installations without the Gutenberg editor (like ClassicPress).
  • Added extra checks to ensure that all tab parameters has been passed correctly.
  • Bug Fixes
  • Added translation domain to some strings.

  • Bug Fixes
  • Fixed click trigger for some HTML elements in Javascript.


  • New Features
  • Added the setting “Disable top bar menu”.
  • Bug Fixes
  • Fixed undefined $can_earn var on filters.php.
  • Improvements
  • Updated deprecated jQuery functions.


  • Bug Fixes
  • Fixed a bug on license clear and deactivation functions causing that previous value gets back after save the licenses again.


  • Bug Fixes
  • Fixed date format on the dashboard widget.
  • Correctly pass the rank ID on email subject and content filters instead of the rank object.
  • Improvements
  • Style improvements on the dashboard widget.


  • Improvements
  • Let WordPress decide SSL verification in some API requests.
  • Updated add-on updater class.
  • Ensure correct server URL for GamiPress add-ons.


  • Improvements
  • Improved activity count checks.
  • Performance improvements on the awards engine reducing the metas queried.


  • Improvements
  • Added cache to more functions to prevent duplicated database calls.
  • Bug Fixes
  • Fixed tabs on tools screen.
  • Fixed database warnings on first installation.


  • Improvements
  • Added more sanitization when inserting logs and user earnings.
  • Ensure to only track visits one time daily to reduce the server work.

  • Bug Fixes
  • Fixed plugin conflict with Yoast SEO Premium.

  • Improvements
  • Apply points format on templates.
  • Bug Fixes
  • Fixed export settings button.

  • Developer Notes
  • Delayed the initialization of the Custom Tables library.

  • Improvements
  • Make registration of triggers excluded from limits more flexible.
  • Parameters sanitization in some requests.


  • Improvements
  • Correctly apply the exclude clause on the Achievements List block when displaying earned achievements.
  • Improved the way to calculate the period ranges.
  • Added the date time on period ranges.
  • Bug Fixes
  • Prevent to display requirements as earned for not logged in users.

  • Bug Fixes
  • Fixed event detection on unlock any or all achievements of a specific type.

  • Improvements
  • Improved Javascript checks to decide the visibility of requirement limit fields.
  • Bug Fixes
  • Fixed typo on requirements limit field values.


  • New Features
  • Added the ability to limit requirements per hour and per minute.
  • Improvements
  • Improved the way to determine if user is able to earn a requirement or not.
  • For achievements that can be earned multiples times, now its steps will be marked correctly as completed or not based on if user is able to earn them again.
  • For requirements limited in a time period, now will appear as completed until the user is able to earn them again.
  • Bug Fixes
  • Fixed alignment of box titles on settings and tools screens.
  • Prevent any PHP warnings while migrating GamiPress database tables to InnoDB engine.
  • Developer Notes
  • Added new filters to extend requirements limit intervals to custom ones.

  • Bug Fixes
  • Fixed user assigned for role changes events.

  • Improvements
  • Force email from address and name to prevent get overwritten by other plugins.
  • Bug Fixes
  • Fixed date range for past week/month/year periods option when is the last day of previous period.

  • Bug Fixes
  • Fixed issues on multisite installs.

  • Improvements
  • Initialize types sooner to get types based functions ready as soon as possible.
  • Bug Fixes
  • Fixed date range for the “yesterday” period option.


  • Improvements
  • On revoke an element with points assigned, restore the user points balance too.
  • Added wp_mail filters to make emails work with 3rd party email providers like SendGrid.
  • Bug Fixes
  • Fixed bug on specific role events checks.
  • Developer Notes
  • Added more utility functions to work with the parameters from events triggered.


  • New Features
  • New event: Get added to any role.
  • New event: Get added to specific role.
  • New event: Get assigned to any role.
  • New event: Get assigned to specific role.
  • New event: Get removed from any role.
  • New event: Get removed from a specific role.
  • Developer Notes
  • Initialize everything sooner to get all functions ready as soon as possible.
  • Reworked the events triggered function to make it more extensible.
  • Removed Javascript file not found message on settings screen.

  • New Features
  • Added the attribute current_user and user_id to the [gamipress_points_types] shortcode.
  • Added the fields “Current User” and “User ID” to the GamiPress: Points types block and widget.
  • Improvements
  • Prevent to display incorrect links on achievement and rank requirements.

  • Bug Fixes
  • Fixed an error that causes that achievements with multiples steps doesn’t gets unlocked.
  • Improvements
  • Prevent the use of relative path to avoid errors in some environments
  • Developer Notes
  • Removed the user of the active achievement feature on the rules engine and moved to the compatibility folder.

  • Bug Fixes
  • Fixed pagination on achievements and ranks earners box from the edit screen.

  • Bug Fixes
  • Fixed incorrect week detection on the first day of the week.

  • Bug Fixes
  • Fixed issue that causes that some fields from the requirements UI are not editable in some browsers.


  • New Features
  • Added the earners box on achievements and ranks edit screens.
  • Improvements
  • Improve the display of the user on earnings list at admin area.
  • Auto-revoke all requirements on revoke an achievement or rank.
  • Load all user awards tables through ajax to speed up access to the user edit screen.
  • Force custom database tables to use InnoDB on creation.
  • Added internal upgrade process to update custom database tables to InnoDB.
  • Performance improvement on numerous user earnings database calls.
  • Great reduction of the amount of database calls from several functions.
  • Prevent to perform API calls on areas outside the add-ons or licenses pages.
  • Added support to display the rank link on “Reach a rank” requirements.
  • Improvements on the cache functionality.
  • Style improvements on the admin area.
  • Developer Notes
  • Added the filter ‘gamipress_disable_network_data_centralization’ to allow disable data centralization on multisite networks.
  • Added the filter ‘gamipress_revoke_requirements_on_revoke_parent’ to allow disable the revoke of all requirements when its parent is revoked.
  • Added the ability to force not search in options when retrieving a specific cache element.

  • Improvements
  • Ensure to display social buttons on earned achievements and ranks only.

  • Improvements
  • Ensure backward compatibility.


  • New features
  • Added the ability allow users share they earned achievements and ranks on Twitter, Facebook, LinkedIn and Pinterest.
  • Added the “Social” section on settings with settings to manage the display of the social buttons.
  • Allow register manual balance adjustments on the user earnings table.
  • Allow register bulk award and revoke balance adjustments on the user earnings table.
  • Added the setting “Global Maximum Earnings” on achievements to allow limit an achievement maximum earnings globally.
  • Added the tags {user_username} and {user_email}.
  • Improvements
  • Added the user display name on the earners list.
  • Make achievements and ranks congratulations text use the WordPress editor for better format it’s content.
  • Style improvements on the tools screen.
  • Developer Notes
  • Added filters to override the user URL and display name on the achievement and rank earners list.
  • Added filters to override the “Unlock using points” button text for achievements and ranks.


  • New Features
  • Added support for custom earnings entries on earnings shortcode, block and widget and at admin area.
  • Improvements
  • Clear field when license gets deactivated included when server responds that license has been already deactivated.

  • Bug Fixes
  • Fixed incorrect last activity time check for ranks, used to determine the exactly date the rank has been unlocked.
  • Fixed incorrect hook name.

  • Improvements
  • Speed performance improvements of the awards engine by reducing the number of checks.
  • Bug Fixes
  • Fixed incorrect checks on points-based ranks using the “Earn an amount of points” event.

  • Improvements
  • Make GamiPress cache options not get autoloaded.
  • Correctly apply the minimum role to administer GamiPress settings to user earnings and logs capabilities.
  • Developer Notes
  • On achievements shortcode, make sure to pass the user ID as integer.

  • Improvements
  • Added site time information on System Info tool.
  • Developer Notes
  • Improvements when overriding CMB2 post fields by detecting if is a custom table form.

  • Improvements
  • Added the ability to clear license fields.

  • Bug Fixes
  • Fixed typo on license fields.

  • Improvements
  • Keep license key hidden included if license key is not valid or gets expired.

  • Improvements
  • Prevent PHP warnings on emails functions.
  • Bug Fixes
  • Fixed requirements times check for requirements higher configured for more than 1 time.
  • Developer Notes
  • Added global flag to meet when is running recount activity tool.

  • Bug Fixes
  • Fixed undesired awards on unlock an achievement of specific type.


  • Bug Fixes
  • Fixed duplicated awards on unlock a specific achievement and an achievement of specific type.
  • Fixed singular and plural usage on requirements at frontend.
  • Developer Notes
  • Increased plugins API transient to 1 week.

  • Bug Fixes
  • Fixed typo on query logs function that causes some awards not get correctly awarded.
  • Fixed typo on several strings related to the word “user” usage.
  • Developer Notes
  • Added new filters on ajax post function.

  • Improvements
  • Added type support on query logs function.


  • New Features
  • Added the “Entries Per Loop” field to the Recount Activity Tool.
  • Added list views on logs and user earnings.
  • Bug Fixes
  • Fixed “Activate License” link from “Add-ons” page.
  • Fixed -1 limit on earners list function, thanks to @cherbst.
  • Fixed old rank population on update user rank function, thanks to @raghavnarang.
  • Prevent PHP warnings on email tags parser if global vars are not provided.
  • Fixed earn points calculation when is working with a rank that all requirements are based on earn points.
  • Prevent to get user profile earnings per page overwritten by the user earnings screen setting.
  • Fixed incorrect invalid license messages.
  • Fixed logs and user earnings bulk delete.
  • Improvements
  • Enqueue Shortcodes Editor script on custom tables add/edit screens.
  • Improved pro add-on update process to avoid “Update package not available” error.
  • Make block’s async selects load default options without require to type something.
  • Highlight GamiPress menu when editing logs or users earnings (also takes effect on other custom table menus).
  • Added more sanitization checks to all ajax functions.
  • Developer Notes
  • Added a filter to override the items per page setting on user profile earnings.

  • Bug Fixes
  • Fixed a wrong check of points earned for points-based requirements that has been created recently.
  • Prevent to remove achievements and ranks images when they are rendered inside another achievement or rank content.

  • Bug Fixes
  • Rename all instances of CMB2_hookup to CMB2_Hookup.


  • New Features
  • Added a log console to the Recount Activity tool to meet what is processing in background.
  • Added the ability to download the log console from the Recount Activity tool.
  • On activity trigger logs, {trigger_type} tag now display the events label (for “Publish a post” event will render “Publish a post”).
  • New tag for activity trigger logs, {trigger_type_key} that displays the events internal key (for “Publish a post” event will render “gamipress_publish_post”).
  • Bug Fixes
  • Fixed a wrong checks that blocks to trigger multiples points-based awards.
  • Fixed incorrect comment ID on the comments recount activity process.
  • Fixed incorrect height of the preview color on color fields.
  • Fixed incorrect check on the awards engine that sometimes blocks some awards from the Recount Activity tool.
  • Improvements
  • Make {trigger_type} tag display the event label to make it more user friendly.
  • Execute Gutenberg blocks on achievements and ranks description.
  • Performance improvements on the awards engine tool.
  • Code improvements on the award engine making it more readable.
  • Developer Notes
  • Added limit and offset vars to the recount activity tool process.
  • Added the ability to provide information about the process status on the recount activity tool process.
  • Update of gamipress_trigger_event() function to return information about what has been awarded.
  • Update of gamipress_maybe_award_achievement_to_user() function to return information about the award process.
  • Updated CMB2 library to 2.7.0.


  • Bug Fixes
  • Fixed a wrong check of points earned in the past for points-based achievements.
  • Fixed a bug that causes that points-based requirement aren’t getting triggered when perform manually points adjustments.
  • Fixed multiples achievements earn when user earns a big amount of points.
  • Fixed duplicate requirement functionality.
  • Improvements
  • Improving caching of the awards engine when user earns points.
  • Developer Notes
  • Updated gamipress_select2() library to 4.0.12.

  • Bug Fixes
  • Fixed internal php error when deleting a user.
  • Fixed some import tools that haven’t correctly send the required security nonces.
  • Improvements
  • Delete earnings of posts that gets deleted.


  • New Features
  • Added the Clean Up Logs tool to delete old logs.
  • Added the “Events Listener” section to the System Info tool.
  • Bug Fixes
  • Fixed not awarding of “Unlock an achievement of type” and “Unlock all achievements of type” events.
  • Fixed parameters detection on custom tables rest API controllers.
  • Removed unused HTML from system info file.
  • Style fixes on Import/Export Setup tool settings.
  • Improvements
  • Awards engine performance improvement by improve the detection of events in use.
  • Prevent to hide success responses on tools.
  • Delete logs and earnings of users that gets deleted from the admin area (and not from the eraser tool).
  • Developer Notes
  • Make use of register_meta() to register user metas mainly to display them on Rest API.
  • Removed backward compatibility code on logs reset process.
  • Moved users admin profile functions to admin/users.php file.
  • Set GamiPress 1.8.0 as new stable release! 🙂