Guide · facts checked Oct 23, 2026

OpenZeppelin Defender shut down: move your monitors in one evening

OpenZeppelin closed new Defender sign-ups on June 30, 2025 and shut the hosted service down on July 1, 2026. If your contracts were watched by Defender Monitor, that watching has stopped. This guide is a Defender monitor replacement plan: what maps to what, what does not, and five steps to get alerts running again.

SmartAlert replaces Monitor only. It does not replace Relayer, Actions or Deploy, and it does not sign or send transactions. For a side-by-side with OpenZeppelin's open-source Monitor, see the full comparison.

Dates

What happened

  1. June 30, 2025

    New Defender sign-ups closed.

  2. July 1, 2026

    The hosted service shut down.

  3. What OpenZeppelin recommends

    Move to its open-source Monitor and Relayer, which you run yourself.

There is no import of Defender monitors on our side, so each monitor is recreated by hand.

Mapping

How a Defender monitor maps to SmartAlert

Contract and network
SmartAlertus
A contract you add by address, on Ethereum, BNB Chain, Base or Arbitrum
Event condition
SmartAlertus
A rule on the event. Ready rule sets appear for Safe, ERC-20, Ownable, Pausable, AccessControl and ERC-1967 proxies when the ABI has the events
Function condition
SmartAlertus
Not a general filter. A function call can be watched in the "Allowed senders" rule (Business). The answers of view functions can be watched in "Contract state" (Pro)
Monitors with no conditions: all transactions to the contract
SmartAlertus
No equivalent. Rules watch events, function answers, failed transactions or allowed senders
Notification channels
SmartAlertus
Telegram, Slack, Discord, PagerDuty, email, webhook. Telegram is on every plan; the others need Pro
Severity of an alert
SmartAlertus
Severity on each rule: critical, warning or info
Monitor triggers an Action (custom code)
SmartAlertus
No equivalent. SmartAlert has no scripts. A webhook can start your own code outside SmartAlert
Fixed condition
SmartAlertus
A fixed threshold, or a norm for each hour of the day

What SmartAlert adds for the same job: a norm for each hour of the day, and a check of the rule on history before you turn it on.

Steps

Move your monitors in five steps

  1. 1

    List your monitors

    Defender is off, so write down what you remember or find in your own notes and repositories: contract address, network, which events or functions you watched, where alerts went.

  2. 2

    Paste the contract address

    Open the contract catalog, or use the field at the top of the home page. Pick the network. SmartAlert reads the ABI and collects history; rules start once that finishes.

  3. 3

    Turn on the offered rules, then map the rest

    For each contract type found, a ready set appears in "Suggestions". Tick the rules you need and press Enable selected. No rule turns on by itself. A monitor that has no ready rule becomes a rule you create: pick the event or metric, then a threshold or the norm.

  4. 4

    Check each rule on history

    The chart shows where the rule would have fired over the history available to your project: 7 days on Free, 90 on Pro. New projects get 90 days for the first 14 days. This is what would have happened, not a forecast. Drag the threshold if it is too noisy.

  5. 5

    Connect a channel

    Add Telegram, Slack, Discord, PagerDuty, email or a webhook and press Send test. If your own code received Defender webhooks, check the SmartAlert request format: it is signed and has its own fields.

Rules that watch failed transactions or allowed senders read receipts only from the moment the first such rule is enabled. They have no history before it.

Import

If you moved to OpenZeppelin Monitor

If you already rewrote your Defender monitors as OpenZeppelin Monitor config files, you do not have to recreate them by hand. In SmartAlert, open "Rules" and click "Import from OZ Monitor", then paste the monitor JSON: one monitor or an array of up to 50, at most 1 MiB.

  1. What moves

    Contract and network, contract events, and conditions on event parameters. Each becomes a draft rule.

  2. What does not move

    Function calls, failed transactions, filter scripts, complex conditions such as starts_with or "or" across different fields. Triggers do not move either: you pick the channels when you enable the rules.

  3. Before you enable

    Each draft shows where it would have fired over the last 90 days, within the history your plan allows. Parsing creates nothing and does not count toward the rule limit, on every plan.

Honestly

What you will not get

  1. Actions and Relayer

    SmartAlert does not run code and does not send transactions. If an alert used to trigger an Action that paused a contract, that part needs another tool.

  2. More chains

    SmartAlert covers four EVM networks. Check your networks before you move.

  3. Exploit prevention

    SmartAlert watches activity and health, not attack signatures.

  4. Self-hosting

    SmartAlert is hosted only. If you want to run it yourself, take OpenZeppelin's open-source Monitor.

Questions

FAQ

Can I import my Defender monitors?

No. There is no import of Defender monitors. Recreate each monitor as a rule.

How long does it take?

A contract with a ready rule set takes a few minutes. Monitors with custom logic take longer, and some have no equivalent.

Should I run the old and new setup in parallel?

Defender is gone, so there is nothing to compare with. If you moved to OpenZeppelin Monitor instead, run both until the alerts match.

What does it cost?

Free: up to 3 rules and Telegram. Pro is $30/mo, Business is $99/mo. A new project gets Pro limits for 14 days, no card needed.

Try it on your own contract

An address is enough. The first 14 days get Pro limits, and rules are checked on history before they go live.