Help Center

How Inbox Penny works, and what to do when it doesn’t

Triggers: what can start a flow

The ten ways someone enters an automation — and why bulk actions don't.

Every automation starts with exactly one trigger. It decides who enters and when — and, just as importantly, who doesn’t.

The ten triggers

TriggerFires when
Joins a listSomeone is added to a list you choose
Leaves a listSomeone is taken off it
Confirms a signup formThey click the confirmation link in their email
Contact is createdA brand-new contact appears, on any route
Matches a segmentThey start matching a segment’s rules
Opens a campaignThey open a campaign you choose
Clicks a campaignThey click anything in it
Clicks a specific linkThey click one particular URL
A date comes roundA date field matches today — a birthday, a renewal
Added by handYou put someone in yourself

Why bulk actions don't start flows

Triggers fire for things a person just did, not for operations you performed on a lot of people at once. Importing 50,000 contacts should not send 50,000 emails as a side effect of tidying your data.

So these deliberately enrol nobody:

  • A CSV import, unless you tick the box and confirm the number.
  • Bulk “Add to list” or “Remove from list” from the contacts table.
  • The API, unless the request explicitly asks for it — see API keys.

Adding one person to a list from their contact page does fire. That’s a deliberate, individual act, and it’s the behaviour you want when you add a customer by hand.

Leaving a list is gated too

An offboarding flow sends real email, so a bulk cleanup that took five thousand people off a list would be the import problem with a different verb. Bulk removal starts nothing.

What a blank field means

Two triggers behave in opposite ways when you leave their target unset, and it catches people out:

  • Joins a list, with no list chosen, means ANY list. That’s legitimate — “anyone who joins anything” is a real thing to want — but if you meant one list and left it blank, the flow reaches far more people than you intended.
  • Matches a segment, with no segment chosen, means nobody. The flow can never start, so we block activation rather than let it sit there looking healthy.

Clicks a specific link with no URL set would match every link in every campaign, so that one is blocked as well.

How quickly they fire

Two speeds, depending on how the trigger learns about the event:

  • Immediate — joining or leaving a list, confirming a form, being created, being added by hand. Something in the app caused it, so the flow starts right away.
  • Checked periodically — matching a segment and a date coming round. Nothing announces those, so we look for them every few minutes.

Opens and clicks arrive when the mailbox provider tells us, which is usually seconds but occasionally minutes.

Once, or every time?

By default someone goes through a flow once. If you want repeat entry — a birthday flow has to run every year — turn that on in the flow’s right-hand panel.

It matters more for some triggers than others, and the panel gives advice for the trigger you actually chose: Letting people come round again.

A date trigger needs it on

With repeat entry off, a birthday flow wishes each person happy birthday once, ever — which contradicts the whole point of the trigger.

Common issues

I added people but nobody entered

You almost certainly used a bulk path. Import with the box ticked, or add someone individually, and check the flow is Active.

Far more people entered than I expected

Check whether the trigger’s list is actually set — blank means any list.

The segment trigger only ever runs once per person

That one is once-only by design. A periodic check can’t tell “just started matching” from “still matching”, so repeat entry has no effect on it — without that, anyone still matching would loop the moment their run ended.

The birthday flow fired on the wrong day

Dates are read on your account’s time zone, set in Settings. If that’s wrong, “today” is wrong by a few hours at each end of the day.

FAQs

Can a flow have more than one trigger?+

One per flow. If you want two ways in, build two flows — which is usually clearer anyway, since the email you’d send someone who bought something and someone who merely browsed are rarely the same.

Does an unsubscribed contact still enter?+

No. Anyone not subscribed is excluded on the way in, and again at the moment an email would be sent.

What does “Contact is created” cover?+

Any genuinely new contact record, whatever route created it — form, manual add, or an API call that opted in. It involves no list at all, which makes it the broadest trigger available. Worth pairing with an if/else if you only want part of that audience.

Where to go next