Creating custom reports in Paid Memberships Pro allows you to monitor the data that matters most to your operations. Paid Memberships Pro includes four reports in the Memberships > Reports screen of the WordPress admin. These reports highlight Sales and Revenue, Signups and Cancellations, Active Members Per Level, as well as data for Member Visits, Views, and Logins.

This guide shows you how to add a new custom report tab in the Memberships > Reports admin area. Your custom report, like this one that shows membership order refund rate, appears like any other built-in report in the Memberships admin.

Featured image for code recipe on adding custom reports to Memberships > Reports admin

Understanding Widget vs. Detailed View

When you add a custom report using this recipe, you’re creating two parts of a reporting interface in the WordPress admin: a summary widget, and a detailed report view.

The summary widget appears alongside other reports on the main Memberships > Reports screen. This is a compact view designed to show quick stats or high-level trends. When someone clicks on that widget, it opens a dedicated detail page. 

The detail view is where you can display more in-depth reporting. It displays charts, tables, filters, or any other data visualization that fits your use case. The code in this recipe sets up the structure for both areas. 

About the Code Recipe

The recipe adds a blank custom report entry to the Memberships > Reports admin page, which you can use as a foundation to build advanced reporting tools tailored to your membership site, such as tracking refund rates, engagement trends, or custom user activity.

Screenshot of custom report in the Memberships > Reports Admin

Note: This code only sets up the base for the report entry. We recommend a developer to extend it to query, display, and format the data you wish to show.

The Code Recipe

Adding the Recipe to Your Website

You can add this recipe to your site by creating a custom plugin or using the Code Snippets plugin available for free in the WordPress repository. Read this companion article for step-by-step directions on either method.

How to Customize This Code Recipe

You can keep things organized by using a PMPro Customizations Plugin. Here is how you can extend this functionality:

  • You can save your customized report code in a separate .php file and then require it within the Customizations plugin by doing this:

require_once(dirname(__FILE__) . "/reports/pmpro-reports-extras.php");

You can also see this recipe, which shows you how to query active members based on usermeta, useful for creating custom member reports.

We have a few articles in our blog on how to create and display custom reports. Check the links below to explore the guides:

Free Course: Membership Site Development—The Basics

Develop a deeper understanding of membership site development in this beginner-level course. Learn how to make your site work better, save yourself time and money, and improve your site's performance.

Featured Image for Membership Site Development Course: The Basics


Was this article helpful?
YesNo