Prerequisites
- Your contract configured in project settings.
- The in-app SDK installed, so the win-back can land.
Build it
1
Trigger on an exit signal (no code)
For EVM contracts, the platform watches the chain for you. In the automation builder, pick the on-chain preset that matches your risk signal, Exchange outflow (tokens heading to a CEX), Capital withdrawn (liquidity pulled), or Unstaked, and give it your contract. See Contract-based flows.
trigger (Exchange outflow) → send in-app (Everything okay?)2
Reach them in-app, and by email where you have one
Lead with an in-app message (it reaches the wallet right away), then branch to email for wallets that have shared an address:
trigger → send in-app → branch (has email → send email | else → in-app only)3
Also catch the quietly dormant
Some wallets don’t signal, they just stop. Build a dormant cohort with a SQL segment:Run a separate automation off that segment to re-engage before they drift further.
4
Activate and publish.
As with any automation, both are required.
Test
Perform the exit action with a wallet you control (or add it to the dormant segment), wait out the short finality delay for on-chain triggers, and confirm the automation registered an entry and the in-app message arrived. See Testing a flow.Measure
- In-app delivered and viewed, and email engagement where sent.
- Retention: did flagged wallets stay active, or return on-chain, after the win-back?
- Recovered value: activity or TVL that came back versus a holdout.
Variations
- Tier the response. A whale heading for the exit may warrant a different message, or a human, than a small wallet.
- Pair with lending risk. Combine with the Health factor crossed trigger to catch borrowers before liquidation.
- Web2 parallel. Working from email engagement instead of on-chain signals? See Win back quiet subscribers.

