Responsible AI
We use AI in specific places to make recommendations smarter — never to profile you, target you with ads, or train external models on your spending. Here's the full inventory of where AI sees your data and where it doesn't.
The one-line summary
AI helps SavvX understand merchants and extract card terms. Your transactions and personal data are processed under Anthropic's no-training opt-out — they don't train Claude, ChatGPT, or any other foundation model.
When it runs
When Plaid returns a transaction, our category map first tries an exact-merchant lookup, then falls back to Claude Haiku.
What the AI sees
The merchant name (e.g., 'KAMWO' or 'McMillen Bros'). Sometimes a snippet of the description if the merchant name is ambiguous.
What it does NOT see
The transaction amount, your account balance, your card, your name, or any other personally identifiable info. The Haiku call literally receives the merchant string and returns a category — that's it.
Opt-out
None — categorization happens automatically. If the engine miscategorizes a merchant, you can correct it via the spending page (and the correction trains our DB-side override, not Anthropic).
When it runs
When the weekly scraper visits an issuer's card-terms page and extracts earn rates, fees, SUBs, and benefits.
What the AI sees
The PUBLIC issuer terms page (chase.com, americanexpress.com, etc.). No user data, no accounts, no transactions.
What it does NOT see
Anything related to you. This pipeline never touches the user-data tables.
Opt-out
N/A — operates on public web pages, not your data.
When it runs
A daily scraper reads r/CreditCards, r/AmexPlatinum, r/ChaseSapphire, etc. for community-confirmed rate changes.
What the AI sees
Public Reddit posts. No user data.
What it does NOT see
Anything related to you. Pure public-content extraction.
Opt-out
N/A — public content only.
When it runs
When the engine values transfer points, it discounts catalog-headline values based on which airlines you actually fly.
What the AI sees
Your airline-spend distribution (a Python dict like {JetBlue: 0.44, Delta: 0.34, United: 0.14}). Computed entirely server-side.
What it does NOT see
Sent to Anthropic, OpenAI, or any external AI. Pure deterministic Python logic — no LLM call. Listed here for completeness because users sometimes assume the optimizer is AI-driven.
Opt-out
Settings → 'Personalize transfer values to my airlines' (defaults on). Off shows catalog-headline values.
SavvX does NOT use OpenAI, Google Gemini, AWS Bedrock, Azure OpenAI, or any other foundation-model provider beyond the three above. We do not have a custom-trained "SavvX model" — your data is never aggregated into model training.
AI categorization is wrong sometimes. Plaid returns "MCMILLEN BROS INC" and Haiku might categorize it as "Food and Drink" when it's actually a plumber. When that happens: (1) the engine still values the transaction correctly via our hardcoded merchant override layer, but (2) the spending UI displays the AI guess. Use the spending-page correction button to flag any miscategorization — that override goes into our DB-side merchant table and applies for everyone going forward, not just you.