Is there any way to search or sort the manually added members of a smart group (versus the smart members)? It seems like there should be, but I don't see any option anywhere. It isn't possible to sort by status when viewing a groups contacts either.

The only workaround I can see is to create a new smart group with the group's criteria, then use an include/exclude search to find the manually added members, but there must be a better way.

2 Answers 2


I have an experimental search extension that provides many missing features, and includes your needs, I believe.

You can try it if you're up to that https://lab.civicrm.org/artfulrobot/keenies but it should be considered alpha, beta at a push! Please see the README for the searches it can do.

It includes a search on the manual added/removed from a group (smart or not), so using this on a smart group basically ignores the criteria.

I built it because if you're using a smart group for a mailing group, it's helpful to be able to search for people who have unsubscribed, but there could be many uses.

It's in early stages, and may be abandoned if/when the core CiviCRM new search project comes to fruition and provides this functionality (but I built this now because that could be a while).

EDIT: for convenience from the README as of 9 July 2020:

Implemented searches

  • Has Activity: choose activity types; relationship (with/target, assignee, created); date range; subject (exact or pattern); location.

  • Contact details: contact type(s); created date range; source field.

  • Manually added/removed from group: select group(s) and a status: Added/Removed. e.g. find exceptions for smart groups.

  • In group: select group(s). This is like a normal group search, so works for smart and non-smart groups. You can put this criteria in a 'not' wrapper to find people not in a group.

  • Has clicked a link in a mailing: date range for the click; select mailing(s) they must have clicked in.

  • Has opened a mailing: date range for the open; select mailing(s) they must have clicked in.

  • Was sent a mailing: date range and mailing(s) selector.

  • Has tag(s): select one or more tags.


That criterion isn't available in the UI; I've typically identified them by sight in the 'view contacts' list from the Manage Groups section. What are you trying to accomplish in finding them - identifying them so they can be removed? Typically it's more efficient to recreate the smart group but if you need to include the manually added folks for some reason and they don't match the smart group's criteria, one other approach is to create one smart group (group A) with your existing criteria, one manual group (group B) with the contacts who had been added manually previously, and one smart group (group C) that includes members of A and B. A bit fiddly but usually effective.

  • Yes, the tricky part that I'm trying to solve is how to make the group of contacts who have been added manually previously. I can't see any way to do it without selecting each one manually, which is painful when the group is large.
    – Lars SG
    Nov 16, 2018 at 2:00
  • Although this isn't recommended unless you're really familiar with the Civi database structure, it is possible to add those folks to a group via a query, but in the UI, yes, it can be painful. Nov 27, 2018 at 14:31

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.