# Enrichment Rules & Budget Caps

> Source: https://docs.trailspark.ai/docs/enrichment-rules-and-budget-caps

## Overview

Once you connect an enrichment provider, its Configure page gains an **Enrichment rules** tab. This is where you decide which accounts are worth enriching and, for providers that meter usage, set a budget so enrichment never runs away with your vendor spend.

## Which accounts to enrich

Under **Which accounts to enrich**, you get the same rule builder used for ICP eligibility — the same account and product fields, just applied to a different question: not "which ICP does this account belong to," but "does this account get enriched." The guidance on the page explains the default: **"Only fill in company details for accounts that match these rules. Leave empty to enrich every account with a business domain."**

A couple of things happen automatically, regardless of your rules:

- Accounts with no usable company domain — for example, one where the only email address on file is a personal one like `@gmail.com` — are never enriched.
- An account that's already been enriched recently isn't re-enriched again right away; TrailSpark reuses what it already has until it's due for a refresh.

## When to enrich

For providers that look accounts up on demand, the **When to enrich** section lets you choose the moment TrailSpark spends credits on an account:

- **When accounts are evaluated (recommended)** — TrailSpark only enriches an account once it's engaged enough to be scored. This is the default, and it keeps you from spending vendor credits on accounts that never turn into anything.
- **As soon as a new account appears** — TrailSpark enriches a brand-new account right away, before it's been scored. Choose this if you want a new account sorted into the right ICP the moment it shows up, rather than waiting for it to be evaluated first. It does mean credits get spent sooner, including on some accounts that might not end up engaged enough to matter.

This section doesn't appear for feed-based providers like Reo.dev, since those pull data on their own daily schedule rather than being looked up on demand.

## Enriched fields

TrailSpark always makes the five standard company details — Industry, Employee Count, Region, Market Segment, and Website Domain — available everywhere, with nothing to turn on. But your provider may send back more than that: a funding stage, a technology, a headcount growth rate, or anything else specific to how you use it. The **Enriched fields** card is where you decide which of those extra fields TrailSpark actually keeps and uses.

The card lists every extra field TrailSpark has seen from your enrichment providers so far. For each one you get:

- An editable **label** — the display name used everywhere the field shows up (starts as the raw field name your provider sent, e.g. `funding_stage`)
- A **sample value** and the number of accounts it's been seen on, so you can tell what you're turning on
- An **Active** toggle

Turn a field's toggle on and click **Save fields** to activate it. Once active, the field:

- Becomes selectable in your ICP eligibility and scoring rules, labeled **"(Enrichment)"** so it reads apart from your own account fields
- Is included in the account context TrailSpark's AI sees when it scores that account
- Appears as an extra row you can map on your destination's Enrichment Fields (or Account Fields) card

If no provider has sent anything beyond the standard five fields yet, the card reads: *"No extra fields received yet. Fields your providers send beyond the standard company details will appear here."*

> [!NOTE]
> Turning a field off doesn't delete it. It stops appearing in rules, scoring context, and new destination pushes, but a destination mapping that already used it is kept — shown with a **"No longer active"** warning — so nothing is lost if you turn the field back on later.

## Budget caps

Under **Budget caps**, you can set:

- **Monthly cap** — the most credits this provider can spend in a calendar month
- **Daily cap** — the most credits this provider can spend in a day

Both default to **"No cap"** if left blank, and the helper text under each reminds you the number is **in the provider's own credits** (e.g., "in Clay credits").

> [!NOTE]
> What a cap actually counts is **accounts sent to the provider per period**, one per account. For Clay, what gets deducted from your own Clay credit balance per account depends on the enrichment columns in your Clay table — a single waterfall column might use one credit, but a table with several provider columns chained together can use more than one credit per row. Set your cap with that in mind if you're also watching your Clay credit balance directly.

> [!NOTE]
> Not every provider meters every kind of usage the same way. Reo.dev's daily segment sync doesn't spend its own credits the way Clay's webhook does, so for Reo.dev the [Segments picker](/docs/connecting-reo-dev) is your main scope control — caps matter most for a metered, per-lookup provider like Clay.

### When you hit a cap

Caps are a **hard pause**, not a soft warning: once monthly or daily spend reaches its cap, enrichment for that provider stops. It automatically resumes at the start of the next period, or the moment you raise the cap. Accounts that would have been enriched while paused aren't lost — TrailSpark picks them back up once enrichment resumes. While paused, the page shows an **"Enrichment paused"** banner: *"Paused — enrichment resumes next period or when you raise the cap."*

## Usage at a glance

Above the rule builder, a usage strip shows:

- **Credits used this month** — how many of the provider's credits enrichment has used so far this period
- **Remaining this month** — what's left under your monthly cap, or **"No monthly cap set"** if you haven't set one
- **Match rate (last 30 days)** — the share of enrichment lookups that found real company data, rather than coming back empty. If this drops noticeably, it's worth checking that your rules and the account identifiers behind them (domains, CRM records) still line up with what the provider expects.
- **Remaining with [provider]**, when the vendor itself lets TrailSpark check your remaining balance directly. Neither Clay nor Reo.dev exposes this today, so you won't see it for them yet — it's ready for a future provider that does.

## Saving is always preview-first

Clicking **Save** never applies a change immediately. TrailSpark first estimates the impact and opens a **"Confirm enrichment rules"** dialog showing:

- How many accounts this would enrich right now
- An estimate of the credits that would use, in the provider's own units
- A warning if the estimate would exceed your remaining budget — in that case, enrichment pauses at the cap rather than going over

From there, click **Cancel** to go back and adjust, or **Save rules** to confirm and apply the change.

## Next Steps

- [Connecting Clay](/docs/connecting-clay) — set up the async round-trip provider these rules apply to
- [Connecting Reo.dev](/docs/connecting-reo-dev) — set up the feed provider these rules apply to
- [Third-Party Intent & Field Provenance](/docs/how-enriched-data-shows-up) — what enriched data looks like once it lands