Skip to main content
All CollectionsEarnProducts
ConvertKit Commerce: Discounts
ConvertKit Commerce: Discounts

How to offer a discount on your ConvertKit Commerce products!

Updated over a week ago

🌟NEW: You can now offer discounts on recurring products! This tutorial has been updated accordingly (see 'Duration' section).

Want to offer your ConvertKit Commerce product at a discount?

This tutorial will cover how to offer a sale or promotional price for your ConvertKit Commerce products, using our new discount code feature!

NOTE: If you need a refresher on how to create & edit your products, please refer to our tutorial here.

How to create a discount

Setting up a discount code is a breeze. From the product builder, navigate to Settings > Discount Codes > Add a discount code:

This will automatically generate a discount code for you, which you can then configure accordingly.

NOTE: If your product is a subscription-based recurring product, like a paid newsletter, you'll also see an extra field for 'Duration' (more information below).

Let's go over each of the settings:


This is the discount code itself. This code will be appended to the end of your product's URL, which will automatically adjust the price on its product page (more on that later).

This code can be modified to your liking, up to a maximum of 10 characters — for example, you could set the code to be something human-readable like SAVE10 or NEWYEAR.

TIP: Discount codes are specific to the product, so you can re-use the same code multiple times in your account. For example, you can run a NEWYEAR discount on several products simultaneously (you'll just have to create each code separately, per product).


This is the value of your discount. You can choose to discount your product by a dollar amount (e.g. $5 off) or a percentage (e.g. 10% off).

Simply toggle your desired discount type from the dropdown, then enter its value in the field (the example above reflects a 20% discount).

TIP: You can make your product free by adding a 100% discount! This could be useful in a situation where you're offering a certain product as a bonus incentive for purchasing something else. If so, just be mindful of keeping its 'free' URL private to only those folks you want to be able to access it at no cost.


This field is optional, and its purpose is to limit the total number of times this discount code can be used.

For example, if you only want this code to be valid for the first 50 purchasers, enter '50' in this field. If you don't want to limit the number of times this discount code can be used, simply leave this field blank.

Once you're done configuring your discount's settings, click 'Save'.

NOTE: You can create multiple discount codes for a single product, and share them each separately using their unique URLs (for example, maybe your VIP list gets access to a steeper discount than the public does for the same product). More on that below.

Duration (recurring products only)

If your product is subscription-based (like a paid newsletter), there will be an extra field to fill out in the discount creation process called Duration:

The duration field indicates how many months that discount will be active, in terms of being applied to any payments made for this product during that period. After this set duration ends, future payments will no longer be discounted. If you want the discount to continue indefinitely, leave this field blank.

NOTE: The duration is relative to when the specific customer purchases (e.g. for a duration of 6 months, those 6 months begin at point of purchase for the individual customer).

How to calculate how many payments will be discounted

You can calculate how many payments will be discounted by dividing the duration by the billing frequency (in months).

The possible billing frequencies (in months) for recurring products are as follows:

  • Monthly: 1

  • Quarterly: 3

  • Annual: 12

Since the billing frequency for monthly products is 1, the number of payments to be discounted will simply be equal to the duration. For example:

3-month discount duration ÷ 1-month billing basis

= 3 payments will be discounted (3 ÷ 1)

For quarterly products, divide the duration by 3. For example:

6-month discount duration ÷ 3-month billing basis

= 2 payments will be discounted (6 ÷ 3)

And for annual products, divide the duration by 12. For example:

24-month discount duration ÷ 12-month billing basis

= 2 payments will be discounted (24 ÷ 12)

NOTE: Typically the discount duration should be a multiple of your billing frequency in months, as in the above examples. But if your calculation results in a decimal, round up to the nearest whole number. For example, a quarterly product with a 4-month discount would result in 1.333 (4 ÷ 3). Rounded up, this means 2 payments would be discounted.

How to share your discounted product

Now that your product has a discount code created, it's time to share it at its promotional price! To do so, you'll share a special URL appended with the discount code you created. This will allow your customers to check out at the discounted price.

To copy this URL, first click Publish from near the top right of the product builder:

On the Publish modal, toggle the 'Include a discount code' option. If you have multiple discount codes for this product, select which one you want to use from the list, then copy its unique link below.

Here's a demo:

Now you can share that URL wherever you're promoting your discount! Or, keep it private and only share with those you want to access it.

Who doesn't love a good VIP sale?

NOTE: If you want to embed your discounted product on your website, you can follow the same steps from the 'Embed' tab to apply your discount to its embed code (you'll need to re-embed your product using the new code).

Here's an example of how a product page might look when visited via a valid discount link:

(Note the adjusted price section)

As mentioned previously, you can have multiple discounts running simultaneously for the same product (for example, a public price and a VIP price). Just share the correct discount URL (which you can generate at any time from the 'Publish' menu above) with the correct group you want to access it, and voilà!

NOTE: Generating a new discount URL via the publish menu won't invalidate any URLs that were previously generated. The only ways a discount can be invalidated is if it's deleted from your account, or if its limit is reached (if one is set).

Ready to end your discount?

When your discount period has come to an end, you can delete the discount code from the list (you can always re-add it in the future) by clicking the X to its left, then click 'Save':

Now that particular discount code will no longer be useable, even if customers visit an old link for it. If they do, it'll just show them the product at full price, with a message indicating the coupon is not valid. The same is true if they visit a discount link after its limit has already been reached.

Here's an example:

No need to worry about old discount URLs floating around. You're in control!

Did this answer your question?