Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
25 Million+
Websites using our plugins
Years of WordPress experience
WordPress tutorials
by experts

How to Create a Referral Program in WordPress

Editorial Note: We earn a commission from partner links on WPBeginner. Commissions do not affect our editors' opinions or evaluations. Learn more about Editorial Process.

Do you want to create a referral program in WordPress?

Referral programs or affiliate programs are a great way to get more people to promote your products to a larger audience. By providing a small payout or other bonus to users, you can get them to send people to become members of your site.

In this article, we’ll show you how to easily create a referral program in WordPress and get more customers.

Creating a referral program in WordPress

Why Create a Referral Program in WordPress?

A referral program or affiliate program allows you to get more people to help you sell your products and services. In return, you pay them a small commission on each sale they make. For more details, see our ultimate affiliate marketing guide to see how it works.

In simple terms, it is like building your own sales army without paying them a full-time salary.

Affiliate marketers are usually content creators who make money online by referring their users to the right products and services. There are several helpful affiliate marketing plugins and tools that affiliates can use to increase their sales.

But to manage your own referral or affiliate program, you’ll need a plugin that allows you to easily manage all aspects of an affiliate program. It should allow affiliate marketers to join your referral program while helping you track sales and traffic sent by each affiliate partner.

Now there are two types of affiliate management platforms that you can choose from.

  • A WordPress affiliate management plugin
  • A cloud-based affiliate network

Both platforms have their pros and cons. For instance, using a WordPress plugin allows you to run your own affiliate program directly from your website. You wouldn’t be limited to the cloud platform’s policies and restrictions.

You also won’t have to pay a per-transaction fee to any third-party network since you’re managing your own affiliate program. This is why most small businesses prefer to use a self-hosted affiliate management plugin.

On the other hand, cloud platforms like ShareASale, Partnerstack, and Impact make your affiliate program instantly accessible to thousands of affiliate marketers. They also have better tracking and payment systems that can streamline your workflow.

But for the sake of this tutorial, we’ll show you how to set up a referral program in WordPress using a plugin (no coding needed).

We’ll show you two top affiliate plugins that you can use with your WordPress website or WooCommerce store. You can pick one that works best for you.\

Method 1. Set up a Referral Program in WordPress with AffiliateWP (Recommended)

For this method, we’ll be using AffiliateWP. It is the best WordPress affiliate management plugin that helps you set up your own referral program in WordPress.

The first thing you need to do is install and activate the AffiliateWP plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.

Upon activation, you need to visit the Affiliates » Settings page to enter your license key. You can find this information under your account on the AffiliateWP website.

AffiliateWP license key

After activating your license key, you need to select a page to be used for Affiliate Area. AffiliateWP automatically creates one for you, but if you want to use a different page, then you can select it here.

On that same page, you need to choose the Terms of Use page and set it using the dropdown. You can check out affiliate program terms pages on other websites to create one for your own site. For example, this is the terms page for OptinMonster’s affiliate program.

After that, you need to review other settings on the page and set them up based on your own referral program policies.

Don’t forget to click on the ‘Save Changes’ button to store your settings.

Next, you need to switch to the ‘Integrations’ tab on the Settings page. From here you need to select the integrations you want to enable. AffiliateWP supports the most popular eCommerce, membership, contact form, and LMS plugins.

AffiliateWP integrations

Click on the Save Changes button when you’re done and then switch to the ‘Emails’ tab on the Settings page.

AffiliateWP allows you to edit emails sent out to your affiliates. You can also upload your business logo, create your own email templates, and choose a professional email address to use to send out affiliate emails.

Setting up emails

Note: If you are unable to receive email notifications, then follow our guide on how to fix WordPess not sending email issue.

Lastly, switch to the Misc tab on the settings page to set up advanced settings for your affiliate program.

The first option on the page is to allow affiliates to register themselves. You can check this if you want affiliates to be able to sign up for your referral program.

Misc settings

Next, you would also want to enable reCAPTCHA to prevent bots from registering as affiliates.

You will need to carefully review each setting and change them as needed. Don’t forget to click on the save changes button to store your settings.

Now that you have set up your referral program, the next step is to add links to it. For example, if you have enabled affiliate registration, then you may want to add a link to the affiliate area so that interested marketers can register themselves.

Simply go to the Appearance » Menus page and add your affiliate area page to a navigation menu. For detailed instructions, see our beginner’s guide to adding navigation menus in WordPress.

Add link to affiliate area

Clicking on the link will take users to the affiliate area where they can register to join as a new affiliate.

They can also log in to their account to see their reports if they’re already members.

Affiliate area

Managing Your Referral Program in AffiliateWP

AffiliateWP comes with powerful tools to manage your affiliates, view reports, and effectively run your affiliate program without leaving WordPress.

To view affiliates that have joined your referral program, simply go to the Affiliates » Affiliates page.


On this page, you can see a list of all your affiliate partners, their earnings, unpaid earnings, referral visits, and more. You can edit any affiliate account individually.

To view each sale made through a referral partner, you need to visit the Affiliates » Referrals page. Here you will see all referral sales, affiliate partners, amount, and more.


You can also click on the ‘Reject’ link if you suspect a referral to be fraudulent.

Viewing Your Referral Program Reports in AffiliateWP

Reporting is crucial to running a successful referral program, and AffiliateWP comes with powerful reporting features.

Head over to the Affiliates » Reports page for a full overview.

Reports overview

You can filter the reporting period by time and specific affiliate partner name. You can also view reports for affiliates, referral visits, and campaigns.

Sending Payments to Your Affiliates

AffiliateWP comes with two types of Payouts.

The first one is AffiliateWP’s Payout Services features. It allows you to easily send payments to your affiliates via AffiliateWP’s payout service. They will be using Stripe to directly deposit payments to your affiliate’s debit card or bank account.

You can enable this feature by visiting the Affiliates » Settings page and switching to the Payouts Service tab.

Payouts service

The second method is to use PayPal, which is available as a separate add-on under the Professional license plan.

Alternatively, you can also manually pay your affiliates by visiting the Affiliates » Referrals page and clicking on the ‘Pay Affiliates’ button.

Manually pay affiliates

You can then select a time period and generate a payout list which you can then use to manually pay your affiliates.

You can do so using PayPal, credit card, online banking, or any other payment method of your choice.

For this method, we’ll be using Easy Affiliate. It is the a great WordPress affiliate management plugin and allows you to easily add an affiliate program to your website.

It works with all top WordPress eCommerce platforms including WooCommerce and MemberPress.

Easy Affiliate is an all-in-one platform that comes with powerful features like an affiliate dashboard, real-time reports, fraud detection, eCommerce integrations, email marketing, one-click payouts, and most importantly no transaction fees.

To get started, you need to install and activate the Easy Affiliate plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.

Upon activation, you need to visit the Easy Affiliate » Settings page and scroll down to the bottom. From here, you need to click on the ‘Launch Setup Wizard’ button to configure the plugin settings.

Launch set up wizard

Next, you’ll need to enter your plugin license key.

You can find this information under your account on the Easy Affiliate website.

Enter your license key

If you have previously used another affiliate plugin, then the plugin will offer to import your data. If not, then you can skip to the next step.

After that, the plugin will attempt to detect the eCommerce plugin you’re using. Simply click on the toggle next to your platform and continue to the next step.

Select platform

Next, you need to provide your business information.

Simply fill out the form and click on the continue button.

Add your business information

After that, you will be given the option to choose how affiliates will register on your website.

You can allow affiliates to apply and then approve applications, allow public registration, or manually add affiliates.

affiliate registration settings

You can choose which information you want to collect from affiliate partners, such as business address and tax information. You can make it required, collect on registration, or allow affiliates to enter it into their account.

Below that, you can choose to show an affiliate agreement. The plugin also allows you to automatically generate an agreement by filling out a simple form.

Generate affiliate agreement

Next, click on the ‘Save and Continue’ button to go to the next step.

Now, you’ll be asked to set a default affiliate commission value as a percentage or a fixed amount. Below that, you can configure payout options.

Commission and payout settings

East Affiliate supports recurring payments and allows you to send bulk payouts both manually and automatically.

After you click on the Save and Continue button, you’ll arrive at the Creatives section.

These are marketing materials that you want to offer to your affiliates. You can share your website logo, product photos, banner ads, text documents, and more.

That’s all, you have successfully set up Easy Affiliate on your WordPress website. You can now click on the ‘Finish Setup and Exit Wizard’ button.

Finish setup

Easy Affiliate automatically generates pages where affiliate marketers can register, login, and manage their affiliate accounts.

You can view these pages by visiting Easy Affiliate » Settings. Simply scroll down to the Affiliate Pages section under the General tab.

Affiliate pages

You can now add the affiliate dashboard link to your website’s navigation menu or in the footer area.

Users clicking on this link will be able to sign up or log in to their accounts.

Affiliate sign up page

Easy Affiliate Dashboard & Reports

Easy Affiliate makes it easy for both you and your affiliate partners to track their performance.

As the website owner, you can view all affiliate activity on your website by visiting the Easy Affiliate » Reports page.

Easy Affiliate reports dashboard

From here, you’ll see a graph overview of affiliate stats on your website with the same data in the tables down below.

Easy Affiliate also includes link tracking. You can also switch to the Clicks tab and view which affiliate URLs are bringing you more clicks.

Clicks reports in Easy Affiliate

Managing Affiliates in Easy Affiliate

Depending on how your affiliate program is set up, Easy Affiliate makes it very easy to manage affiliates.

Simply go to the Easy Affiliate » Affiliates page and you will see the list of affiliates you have approved or added to your website.

Affiliate management in Easy Affiliate

You can approve new affiliate applications by switching to the applications tab.

This will show you the list of affiliates awaiting approval.

Affiliate applications

You can click on an affiliate name to view more details of their application. If everything looks good, you can go ahead and approve them.

Using Addons to Extend Easy Affiliate Functionality

Easy Affiliate comes with a bunch of integrations and extensions that you can use to extend your affiliate program.

This includes integration with top email marketing platforms, a suite of fraud prevention tools, custom commission rules, advanced commission levels, and more.

Depending on your license plan, you can view the available addons by visiting the Easy Affiliate » Addons page.

Easy Affiliate addons

Overall, Easy Affiliate is a very robust affiliate management plugin for WordPress. It’s created by the same team behind MemberPress, so they genuinely understand the problem and have built a solution that’s both easy and powerful.

We hope this article helped you learn how to create a referral program in WordPress. You may also want to see our guide on how to get a free SSL certificate for your website, or check out our showcase of must-have WordPress plugins for business sites.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

Editorial Staff

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

10 CommentsLeave a Reply

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Haroon Shahid says

    I want this when a user registers for affiliate program they should receive a Referral Link that we can track how many persons click on their link or buy stuff from their link
    Which plugin or function do we need? Referral Link can be Manual or auto its not matter

    Thank you

    • WPBeginner Support says

      Both of the plugins should allow you to track your affiliates, if you wanted something specific we would recommend checking with the plugin’s support and they can help clarify.


  3. Brian says

    I’m looking for something very basic – I just want people to be able to refer their friends to my free newsletter, basically all they need is a unique referral URL. I don’t need them to log in for anything, there are no sales, etc. Just something quick and easy that integrates with MailChimp.

    Does something like that exist??

    • WPBeginner Support says

      If you’re using MailChimp then their Forward to a Friend link sounds like what you’re wanting :)


    • WPBeginner Support says

      You would want to check with the support for the affiliate plugin you’re using for if that is an option.


  4. Christopher Scott says

    Thanks for this. I never knew this feature was available in WordPress. I should have known! WordPress have everything. Love it. I appreciate all your step-by-step tutorials here on this blog. Been reading for a while but rarely comment. Thanks.

Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.