Shouldn't I get the contact in a segment in this situation?

Your software
My Mautic version is: v4.1.0

  1. I have a user with tag “catching-up”:

image

  1. I have a segment with a filter sayin to “include” cathing-up as a tag:

  1. But the segment does not get the user in:

Am I doing something wrong?

Often, when a segment misbehaves, its usually because

  • U have removed that contact from the segment before manually, meaning they cant be added back by a filter (look at the contact history for clues)
  • There is an automation somewhere that is removing the person from the segment.
  • Something is wrong with how you have set up filters for the segment. (they look correct in your screen grab)

@robm Can you ‘delete the knowledge’ that they were removed manually from a segment, so that a filter will select them?

Thanks,

Sean

Great question. I am not sure.

Anyone have an answer?

You can do this only via a mysql query.

A work around might be to create a new segment with the same filter This would be seen as a new segment and they would be added.

Of course this could have knock effects for campaigns that are using these segments.

Or you could manually put them back into the segment if you know who they are and there are not too many.

Perhaps export the contacts in question if there a lot of them, then re-import them and in the import choose the segment to add them to.

@joeyk Any idea what that query might be?

Be always careful with mysql direct interventions.
Assuming your db name is mauticdb, the segment in question is segment 1:

UPDATE mauticdb
SET manually_removed = 0,
    manually_added = 0
WHERE leadlist_id = 1;

Hi @joeyk,

Thank you for your reply. I believe your sql is slightly incorrect, but was a massive pointer for me (as I don’t know the underlying Mautic database structure).

UPDATE leadlists_leads
SET
manually_removed = 0,
manually_added = 0
WHERE
leadlist_id = 1

Though I’m thinking that if ‘manually_removed’, the relevant row should actually just be deleted.

Sorry yes, that’s what I meant. I added the db name instead of table name. Duh.

If they wouldn’t qualify based on filters, they will be kicked out from the segment by the segment processor script.