## TL;DR
Every macro library accumulates dead weight: macros for retired features, three versions of the same answer, and entries nobody has used in a year. Audit quarterly: pull usage counts, flag anything unused in 90 days and anything duplicated, verify survivors against the current product, and archive the rest. A library half the size that agents trust beats a library twice the size they do not.

## The query

```text
support macro audit: how to find and kill dead macros
```

## Use this when

- The macro library keeps growing but agents complain
- Quarterly or post-launch cleanup time
- A product change made old answers wrong
- New agents cannot find the right macro

## Not for

- Writing new macros
- Help-center article audits
- Chatbot intent cleanup
- Teams with under 30 macros (just read them)

## Steps

### 1. Pull usage data for the last 90 days

Export every macro with its use count. Sort ascending. The bottom of this list is your kill list candidate pool. No usage data in your tooling: survey the team for macros they have never touched.

Expected output: a usage-ranked macro list.

### 2. Flag the three kill categories

Zero uses in 90 days, duplicates (same intent, different names), and version sprawl (v1, v2, v3 all live). Tag each macro with its category. Duplicates are worse than dead macros: they actively cause inconsistent answers.

Expected output: every macro tagged keep, merge, or kill.

### 3. Verify survivors against the current product

For each "keep," check the macro's claims against the product as it exists today: button names, plan limits, timelines. Product changes silently rot macro copy. Fix or kill anything stale.

Expected output: verified, current copy on every kept macro.

### 4. Archive, announce, and redirect

Move kills to an archive (never delete: old tickets reference them). Merge duplicates into one canonical macro. Announce the changes: "these 40 macros are gone, these 12 merged into 4." Agents need to know the library changed.

Expected output: a smaller library and a team announcement.

### 5. Set the next audit date and a creation bar

Schedule the next audit for 90 days out. Add a lightweight creation rule: no new macro without a name following the convention and a check that no existing macro covers it. Audits get easier when creation is disciplined.

Expected output: a calendar invite and a creation checklist.

## Template: the audit worksheet

```text
Macro name | Uses (90d) | Verdict | Action
billing: refund status: chat: v2 | 412 | keep | verified current
billing: refund status: chat: v1 | 0 | kill | archive
accounts: login help: email: v3 | 88 | merge | merge into "accounts: password reset: email: v2"
legacy: invite codes: email: v1 | 0 | kill | feature retired 2025, archive

Killed: __  Merged: __  Kept: __  Next audit: __
```

## Variant phrasings

### clean up canned responses

Steps 1, 2, and 4. Usage data, kill categories, archive.

### macro library too big

Full sequence. The creation bar in step 5 prevents relapse.

### outdated macros after product launch

Step 3 first. Verify-against-product before anything else.

## Why it works

Macro libraries rot because creation is easy and deletion feels risky. The audit makes deletion safe (archive, not delete) and routine (quarterly, data-driven). Usage data removes the politics: nobody defends a macro with zero uses.

## Edge cases

- Seasonal macros (tax season, back to school): mark them seasonal and exempt from the 90-day rule.
- Macros used rarely but critically (legal, security): exempt by tag, verify carefully.
- The macro author still works here: loop them in before killing their macro. Courtesy prevents fights.
- No usage tracking in the tool: use the survey method and accept it is approximate.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_G7MQaykSo9N1246y1VmRaw
