Fee Ledger: Track Bank Fees and Catch the Creep

Turn on the Fee Ledger to classify bank fee lines from your transactions and get alerted when a month’s fees creep above your recent average.

3 min read

On this page

The Fee Ledger watches the money your bank quietly takes back: it recognizes fee lines in your syncing transactions, keeps a running monthly fee total, and alerts you when a month's fees creep meaningfully above your recent average. Fees are the classic slow leak — each line too small to notice, the trend very much worth noticing.

You can create as many Fee Ledgers as you need — each instance targets its own set of transaction feeds via its Dependencies tab, so a tight creep threshold on your operating accounts can sit alongside a laxer one covering everything else. Each instance alerts and cools down independently.

Like the other Watch enrichments that read totals, a Fee Ledger has no data type of its own: attach any feeds you like and the fee lines come from whichever of them carry transactions.

What counts as a fee#

Classification is deterministic — a curated list of fee shapes matched against the transaction description, not a guess:

  • Overdraft fees
  • Monthly service fees
  • ATM fees
  • Wire fees
  • FX / foreign transaction fees
  • Interchange fees
  • Other lines that explicitly say "fee"

Interest is never counted as a fee — even when the line also mentions a fee, interest is excluded first. Interest is a cost of borrowing; fees are a cost of banking; mixing them would make both numbers useless.

Precision over recall, on purpose

The list is deliberately conservative: a false "fee" label erodes trust in the ledger faster than a missed one. If a genuine fee slips through because your bank words it unusually, the monthly total under-counts slightly — it does not mislabel your ordinary spending as fees.

Fee reversals net within the month: when the bank refunds a fee, the refund subtracts from that month's total, so a charged-and-refunded fee does not inflate the trend.

The creep alert#

Once there are three full months of tracked fee history, each month's running total is compared to the average of the trailing three months. When the current month exceeds that average by more than your threshold (default 20%, configurable 1–500%), the creep alert fires to your configured destinations — email, Slack, or webhook, the same channels every Watch enrichment uses. Repeat alerts for the same creep are held back by a 24-hour cooldown.

Until those three months of history exist, the check stays silent — a workspace without fee history cannot "creep", and silence beats noise.

Seed the history with a backfill

Fee totals accrue to the month each fee occurred, not the day it synced. A backfill therefore fills in past months (up to 13 months back) — run one after enabling the Fee Ledger and the three-month baseline can exist on day one instead of a quarter from now.

How it runs#

Fee lines are classified and totalled during your syncs; the creep comparison itself is evaluated by BankSync on a schedule, independent of your syncs. Like every Watch enrichment, the Fee Ledger never modifies records — a transaction recognized as a fee still syncs to your destination exactly as it arrived.

Setting it up#

  1. Create it

    On the Enrichments tab, click "Add an enrichment" and choose Fee Ledger in the Watch group.

  2. Set the creep threshold

    Keep the 20% default to start. Raise it if your fee volume is naturally lumpy; lower it if you want to hear about smaller drifts.

  3. Choose where alerts go

    Email recipients, a Slack incoming webhook, or a webhook endpoint.

  4. Target the feeds

    In the Dependencies tab, tick the transaction feeds whose fees should count, then flip the switch to Enabled — and consider a backfill to seed the baseline.

The Fee Ledger configuration form: a What counts as a fee explainer card listing bank service charges, overdraft and NSF charges, wire and FX fees, and ATM surcharges matched by a curated pattern list, a Fee creep alert reading alert when a month's fees run 20 percent above the trailing 3-month average, and an Email alert to section with one workspace member selected.
The Fee Ledger: what counts as a fee, the 20% creep threshold, and the alert recipients.
  • Budgets: general-purpose threshold alerts on totals — a Budget on a "Fees" category is the hand-rolled alternative.
  • Digests: the scheduled summary built from the same monthly totals.
  • Creating Enrichments: the shared enrichment workflow.

Use this page with your AI assistant

Every BankSync doc is available as plain Markdown for agents and LLMs.