> ## Documentation Index
> Fetch the complete documentation index at: https://alius-docs.frimty.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Guards

> Instant alerts for costly mistakes, with a one-tap Undo

## Overview

A **Guard** watches for damage, not events. You don't pick a Shopify event or write a condition — you choose *which kinds of mistake* to watch for, and Alius classifies every product and order change against that list. When something matches, you get an alert with the old value, who made the change (when Shopify's data allows it), and — for most classes — a button that undoes it.

<Note>
  A trigger fires whenever its event happens, whether the change was good or bad.
  A Guard only speaks up when a change looks like a **mistake** — a price cut in
  half, a product taken off sale, a link that's about to 404.
</Note>

Guards are a **Pro / Max** feature and live under the **Automations** section alongside Triggers, Reports, Goals, and Insights.

***

## What you can watch

<CardGroup cols={3}>
  <Card title="Price & Availability" icon="tag">
    A sharp price move, a fake-looking sale badge, a product unpublished,
    archived, or deleted, stock hitting zero, or inventory tracking turned off.
  </Card>

  <Card title="Discoverability" icon="link">
    A product's URL changing — breaking every existing link to it — or its SEO
    title/description getting wiped.
  </Card>

  <Card title="Money" icon="dollar-sign">
    An order selling below cost after discounts, or a price/cost move that
    leaves margin dangerously thin.
  </Card>
</CardGroup>

You can pick any combination of change classes on one Guard, or create several — the Guards tab offers ready-made bundles for each group above, plus a **Custom Guard** with every class as a checklist.

***

## The button is the point

Most other automations tell you something happened. A Guard alert carries a button that **fixes** it:

| Change                              | Button              | What it does                                                      |
| ----------------------------------- | ------------------- | ----------------------------------------------------------------- |
| Price, availability, or SEO changed | **Undo**            | Reverts the exact field to its value before the change            |
| URL handle changed                  | **Create redirect** | Points the old URL at the new one, so existing links keep working |

**Undo refuses rather than guessing.** If the product changed again after the alert — someone else edited it, or you tapped twice — Undo tells you so and shows the old, alerted, and current values instead of silently overwriting a later edit.

Two classes are alert-only, on purpose:

* **Stock count changes** aren't undoable — inventory moves for real reasons, and reverting a count would corrupt it.
* **Deletions** aren't undoable — the alert carries the product's last known values so you can recreate it by hand, but the deletion itself is final.

Undo and Create redirect work on **Slack**, **Telegram**, and **Discord (Bot)**. On hubs without buttons (Email, Discord via incoming webhook, HTTP webhook), the alert still arrives in full.

***

## Who made the change

When Shopify's data allows it, the alert names who made the change:

* **A staff member** — by name, when Shopify's admin log captures it, otherwise "by a staff member"
* **An app** — by name (useful for catching a bulk-editing app you forgot was installed)
* **Alius** — when the change was your own Undo or redirect

<Note>
  Shopify only reliably tracks *who* for some kinds of change — publishing,
  unpublishing, and deleting. Price, handle, SEO, and inventory changes ship
  without a "who" line rather than guessing one. You'll still see exactly what
  changed and when.
</Note>

***

## Bulk changes collapse to one alert

A price-list import or a bulk-editing app can touch hundreds of products in seconds. Guards wait briefly (about 90 seconds) after the first change before sending anything, so every change in that window arrives as **one** message instead of hundreds:

> **312 products changed** in 90 seconds — price up on 300, unpublished on 12.

Below 5 products in a window, each gets its own alert with its own Undo button. At 5 or more, you get one summary with a few examples and a link to the full list in [Notification History](/features/notification-history) — there's no bulk-Undo button; a one-tap revert of hundreds of products is worth doing from the admin, deliberately.

<CardGroup cols={2}>
  <Card title="No repeat nagging" icon="bell-slash">
    The same product changing the same way again within 6 hours doesn't alert
    twice.
  </Card>

  <Card title="A daily ceiling" icon="filter">
    If a shop somehow generates a flood of alerts in one day, the rest collapse
    into a single end-of-day digest instead of a wall of notifications.
  </Card>
</CardGroup>

***

## Margin Guard

The **Money** group watches for changes that cost you on the sale itself, not just visibility:

* **Sold below cost** — an order sells units for less than they cost you, after discounts. This checks the price you actually received, not the list price, so a stacked discount that quietly pushes a sale into a loss is exactly what it catches.
* **Margin razor-thin** — a price or cost change leaves your margin below a floor you set (defaults to 15%), even though the product is technically still profitable.

<Note>
  If Alius has no recorded cost for a product, it stays silent on that product
  rather than guessing whether a sale was a loss.
</Note>

***

## Creating a Guard

1. Click **Create Automation** → choose the **Guards** tab.
2. Pick a bundle (Price & Availability, Discoverability, Money) or start with **Custom Guard**.
3. Set the **Title**.
4. Check the change classes you want. Some show a threshold — e.g. "alert when the price rises by more than 20%" — that you can adjust.
5. Optionally narrow the Guard to specific vendors, product types, or tags.
6. Review the action buttons (Undo, Create redirect) — both are on by default and can be turned off.
7. Select a **Hub** and its channels/recipients.
8. Save.

There is no schedule to pick and no condition builder — a Guard watches instantly.

Use **Fire (test)** to preview a real alert before it matters. A test fire never changes anything in your store and never creates a working Undo button.

***

## Where Guards show up

Guard alerts arrive on your hub like any other automation and are recorded in [Notification History](/features/notification-history), including what was undone, refused, or left unactioned.

***

## Limits

| Plan | Active Guards     |
| ---- | ----------------- |
| Free | 0 (not available) |
| Pro  | 3                 |
| Max  | Unlimited         |

All change classes on one Guard draw from the same slot, so a Pro store can run up to 3 Guards covering any combination of classes. Only **active** Guards count toward the limit. See [Pricing](/guides/pricing).
