We are looking at membership progression. So we want to find out who has a current "Full" membership who started their full membership less than 5 months after their "Student" membership expired. Anyone know how I could create a search in CiviCRM that would provide this information? Our CiviCRM is also connected to Drupal so happy to build this in Drupal views is that easier.

  • Some CiviCRM installations will show a membership upgrade you're describing as one single membership - others will show them as two separate memberships. Could you clarify which approach you're using? Feb 17, 2017 at 15:55
  • Am taking the approach of having different membership records for the different levels of membership. So if you upgrade you will end up with a second membership record. Feb 19, 2017 at 21:55

2 Answers 2


How we did this in the end was to create some custom code that when a new membership was added it would check if there was a membership of the previous membership type. ie if they were purchasing a Full membership if they had a current or expired Student membership.

If there was then it would calculate the number of days between the end date of the previous membership and the start date of the new membership and store this value in a custom field. We also added a feature that if the previous membership had not yet expired we would end it because in our case you were not allow to hold more than one membership at a time.

We can now run all the searches and views we like off this value.


Best option to my knowledge would be

Go to Advance search – select all the membership which has already expired “Student” and add these contact to a group

Now in the same advance serach - select the new group and look for “Full membership” – which should give you list of contact

Even you can use date range for membership selection

I guess this helps!!!

  • 1
    It still won't compare the dates which is the key. We are likely to take the approach of finding the progression delay (time between one membership ending and the new one starting) on the sign up for new membership. Then store that information in a field so that we have it for future searches and views. Will feedback our solution once we have it. Feb 17, 2017 at 1:32
  • In the search use the date range - i guess that should be helpful Feb 17, 2017 at 9:08

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.