I have a paid event and I am allowing users to register multiple participants. If they register more that 8 people then I want to provide a discount. In the way you might allow someone to purchase a table of 8 which costs less than 8 individual tickets to encourage them to bring friends. I want them to register 8 participants rather than using a price set to purchase a "table" because I want to collect information about each contact that is participating.

Is there a way to do this directly in CiviCRM?

I am aware I could probably make it work through webform_civicrm but would rather do it directly if possible so we do not have to build webforms for each event as well.

CiviCRM version 4.7.27 and using Drupal

  • 1
    We did this for bulk memberships and we decide to install CiviDiscount and give groups of users a unique discount code. This probably isn't the best answer but wanted throw it out there for an idea.
    – Christia
    Dec 7, 2017 at 6:22
  • Thanks, I am aware of CiviDiscount but that won't work in our situation. Dec 7, 2017 at 21:43

1 Answer 1


The hook hook_civicrm_eventDiscount runs at the right place where you could apply discounts based on the number of people in the booking ... but there is a caution in the documentation: "This hook is outdated - notable, CiviDiscount does not make use of it." Maybe because of that there is no guidance on how to use it.

You probably want to investigate the implications of it being 'outdated' before you choose to use this and it would be useful if someone could weigh in with some background on the comment - and ideally update the dev docs too!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.