How to track discounts and special agreements?

We are a SaaS business using HubSpot (Enterprise) for Sales, Marketing, and Customer Service. I'm looking for input on best practice for documenting special agreements and discounts in HubSpot. 


For example: a customer is paying list price for their subscription; they contact Customer Service due to an issue, and are offered a 50% discount on the next 2 months of their subscription.  Or, a new customer has in their agreement that the first 12 months of their subscription are 50% discounted.  We want to get an easy overview of all active discounts, as well as report on historic "lost revenue" due to the various reasons for discounts.  Any ideas?


Some solutions I am considering:

  • An own ticket type or pipeline for discounts and compensation, with custom properties for the start/end date of the discount, total amount compensated, etc. The ticket is closed when the discount is no longer active.  Use lists to see all customers with an active discount.  This would be easy to implement, but my concern is that this will disturb general reporting on tickets as we use tickets for customer service.
  • A custom object for "Special agreements" which can be associated with the Deal or Ticket that led to the discount, and the customer it applies to.  Set up the custom object as a pipeline with 2 statuses: active and inactive (closed).  My concern is that a custom object might be less intuitive for the end users and a bit more complicated to implement.

Appreciate any experiences others can share, or good ideas for how you would approach our scenario!

4 Replies 4
Key Advisor | Gold Partner
Key Advisor | Gold Partner

How to track discounts and special agreements?

Hi @CGoodwinOlsen 


Sorry for the short post – we just set up Recurring Revenue Pipeline for another customer, sounds like it's a good fit for you.


Please send me a message if you'd like to discuss it.


Gotta run


Guide | Gold Partner
Guide | Gold Partner

How to track discounts and special agreements?

Further to this, here are ideas to structure each discount:

  • Discount Code
  • Discount Name
  • % or $ based
  • Discount per unit, or on the whole order (relevant if $ discount)
  • May be used with any product, or is limited to certain products, editions and payment plans
  • May be redeemed only once per subscription/deal, or company - or may be re-used multiple times
  • Max redemptions (limits the total number of times this discount can be used anywhere)
  • Valid Start Date and End Date if not to be used beyond a certain time
  • Number of customer billing cycles (e.g. the customer support 50% discount applies to 2 monthly cycles)
Guide | Gold Partner
Guide | Gold Partner

How to track discounts and special agreements?

Hi @CGoodwinOlsen 


I see a lot of merit in either of your approaches.

  • Having the ticket in its own pipeline should allow you to control polluting your regular support ticket queue reporting.
  • Or a custom object is a good potential way to achieve a similar result, but without polluting the UI where your real support tickets will appear on relevant objects.


I suggest standardising your discounts to begin with - so that you have a unique code for each discount, as a drop-down on the ticket or custom object when used.

  • One code for 50% for the next 2 months
  • Another code for 50% off year one

Then you have a unique code to help you with:

  • Reporting on how often that code is used (and by whom)
  • Adding the code into a custom property on line-items of a deal, if you want to report on lost revenue by discount code to a line item level
  • Adding an approval flow, where for example customer support can issue the 2-month discount, but a sales manager must approve the 12-month discount.

I know this is not the total engineered solution for you, as you must still create relevant workflows and reports - but I wanted to plant the seed of thought to standardise your discounts using discount-codes, then the rest of the setup for this will be structured for control and reporting.


Hope that helps!

cheers Pete.

Community Manager
Community Manager

How to track discounts and special agreements?

Hi @CGoodwinOlsen 


Thank you for reaching out.


I want to tag some of our experts on this - @Josh @Mike_Eastwood @HubDoPete do you have any advice for @CGoodwinOlsen on this?


Thank you!



Saviez vous que la Communauté est disponible en français?
Rejoignez les discussions francophones en changeant votre langue dans les paramètres !

Did you know that the Community is available in other languages?
Join regional conversations by changing your language settings !