Born in 2013, myCRED came into existence due to frustration. At the time, a few points management tools were available in the WordPress community. Existing plugins were usually pretty basic and lacked some of the core features you would expect from a management tool.

So on April 23rd 2013, myCRED 1.0 was launched with 6 built-in add-ons. I wanted the plugin to be clean and as simple as possible to use and to customize. Since I did not want to build a plugin that attempts to do everything, a lot of time and effort were put into making the plugin developer friendly.

Over the years, myCRED has grown mainly by the addition of new add-ons and hooks but the core concept of the plugin has remained the same. As of 1.7, myCRED has begun it’s last major transformations towards more object oriented setup.

Core Concept

Instead of building a separate, stand-alone points system, myCRED was made to be a part of WordPress. Besides logs, myCRED utilizes WordPress’ User Meta API to keep track of balances, the Options API to keep track of settings and Custom Post Types for item based features like Badges and Ranks.

Built on a opt-in principle, by default only balances and balance management is enabled in myCRED. It is up to you, the user, to decide what add-ons, hooks or other features you want to enable and use.

As of version 1.7 the wp-admin area experience has begun to change to feel more “WordPress native”.

Minimum Requirements

Built to be used on WordPress powered websites, myCRED requires WordPress 4.0 or higher as of version 1.7. Previous versions are confirmed to working on WordPress 3.8+ but older versions are not supported.

Note that since myCRED ties points to WordPress users, it will not work with external user sources or visitors to your websites. If you for example have your users stored externally, and users do not log into WordPress to access the website, myCRED will not be able to assign the users points.


Server Requirements

  • PHP 5.3+
  • MySQL 5.0+
  • mcrypt PHP Library enabled

The mcrypt PHP library is used to encrypt certain actions in myCRED in order to prevent abuse. While you can using the MYCRED_DISABLE_PROTECTION constant to disable this, it is not recommended!

Some web hosts has this library disabled by default. If this is the case for you, just contact your web host and ask them to enable the library.

A common indicator that the mcrypt library is not enabled on your website is that you get an error message when enabling the plugin. Example: Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in …


myCRED was not built to “do everything”. Instead the plugin was built to be developer friendly to allow further features to be added with ease.

myCRED is being used on small to very large communities, managing thousands of balances. While balance management is supported on very large sites, certain add-ons would require customization to run efficiently with large number of users. Particularly the Banking add-on services would require some adjustment to manage large number of users.

Finally the myCRED add-on does not offer a withdrawal system. Users can buy points for real money but they can not exchange them back into real money. This is due to legal issues as depending on where in the world you are, using myCRED as a financial tool might be seen as a “banking software” and be subject to regulation. It also would prevent me from selling my gamification add-ons such as the Lottery add-on or the Scratch Card add-on.

myCRED however does not prohibit you from building a withdrawal tool yourself! It is just a feature that will not be included in myCRED. How you use myCRED or what customizations you add, is all up to you.

Last edited February 10, 2017