earnrate 0.2.4 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -15
- package/data/CHANGELOG.md +79 -0
- package/data/VERSION +1 -1
- package/data/cards/amex-blue-business-plus.yaml +14 -6
- package/data/cards/amex-blue-cash-everyday.yaml +12 -3
- package/data/cards/amex-blue-cash-preferred.yaml +17 -3
- package/data/cards/amex-gold.yaml +23 -3
- package/data/cards/amex-platinum.yaml +19 -3
- package/data/cards/bank-of-america-atmos-rewards-ascent.yaml +15 -3
- package/data/cards/bank-of-america-atmos-rewards-business.yaml +19 -4
- package/data/cards/bank-of-america-atmos-rewards-summit.yaml +9 -2
- package/data/cards/bank-of-america-customized-cash-rewards.yaml +10 -4
- package/data/cards/bilt-obsidian.yaml +4 -3
- package/data/cards/capital-one-kohls-card.yaml +11 -2
- package/data/cards/capital-one-kohls-rewards-visa.yaml +8 -2
- package/data/cards/capital-one-savor.yaml +32 -10
- package/data/cards/capital-one-venture-x.yaml +19 -4
- package/data/cards/capital-one-venture.yaml +19 -5
- package/data/cards/chase-aeroplan.yaml +15 -3
- package/data/cards/chase-freedom-flex.yaml +50 -10
- package/data/cards/chase-freedom-unlimited.yaml +6 -2
- package/data/cards/chase-ihg-one-rewards-business.yaml +18 -2
- package/data/cards/chase-ihg-one-rewards-premier-select.yaml +14 -2
- package/data/cards/chase-ihg-one-rewards-premier.yaml +19 -2
- package/data/cards/chase-ihg-one-rewards.yaml +15 -2
- package/data/cards/chase-ink-business-cash.yaml +7 -3
- package/data/cards/chase-ink-business-preferred.yaml +9 -2
- package/data/cards/chase-prime-visa.yaml +24 -5
- package/data/cards/chase-sapphire-preferred.yaml +59 -6
- package/data/cards/chase-sapphire-reserve.yaml +12 -2
- package/data/cards/chase-southwest-performance-business.yaml +22 -4
- package/data/cards/chase-southwest-plus.yaml +13 -3
- package/data/cards/chase-southwest-premier-business.yaml +22 -5
- package/data/cards/chase-southwest-premier.yaml +13 -3
- package/data/cards/chase-southwest-priority.yaml +18 -2
- package/data/cards/chase-united-business.yaml +5 -2
- package/data/cards/chase-united-club-business.yaml +2 -2
- package/data/cards/chase-united-club.yaml +17 -4
- package/data/cards/chase-united-explorer.yaml +5 -2
- package/data/cards/chase-united-gateway.yaml +2 -2
- package/data/cards/chase-united-quest.yaml +12 -3
- package/data/cards/citi-aadvantage-business.yaml +10 -4
- package/data/cards/citi-aadvantage-executive.yaml +8 -8
- package/data/cards/citi-aadvantage-mileup.yaml +7 -4
- package/data/cards/citi-aadvantage-platinum-select.yaml +1 -1
- package/data/cards/citi-costco-anywhere-visa-business.yaml +6 -9
- package/data/cards/citi-costco-anywhere-visa.yaml +7 -10
- package/data/cards/citi-custom-cash.yaml +43 -12
- package/data/cards/citi-double-cash.yaml +9 -3
- package/data/cards/citi-my-best-buy-visa.yaml +6 -3
- package/data/cards/citi-strata-elite.yaml +12 -2
- package/data/cards/citi-strata-premier.yaml +24 -2
- package/data/cards/sofi-unlimited-2.yaml +17 -3
- package/data/cards/td-bank-nordstrom-credit-card.yaml +16 -3
- package/data/cards/td-bank-nordstrom-visa.yaml +23 -3
- package/data/cards/td-bank-target-circle-card.yaml +13 -4
- package/data/cards/usbank-cash-plus.yaml +29 -7
- package/data/cards/wells-fargo-active-cash.yaml +9 -2
- package/data/cards/wells-fargo-autograph.yaml +31 -7
- package/data/categories.yaml +12 -0
- package/data/currencies.yaml +2 -0
- package/data/issuers.yaml +32 -0
- package/data/memberships.yaml +33 -0
- package/data/merchants/overrides.yaml +25 -0
- package/data/merchants/seed.yaml +7 -0
- package/dist/cli/bin.js +10 -1
- package/dist/cli/cheatsheet.js +11 -6
- package/dist/cli/explore.js +17 -23
- package/dist/cli/import.js +10 -10
- package/dist/cli/offers.js +19 -8
- package/dist/cli/run.js +31 -20
- package/dist/cli/wallet.js +50 -5
- package/dist/data/file-store.js +9 -7
- package/dist/data/integrity.js +22 -2
- package/dist/data/load.js +13 -2
- package/dist/data/store.js +13 -22
- package/dist/data/wallet-edit.js +108 -8
- package/dist/engine/cheat-sheet.js +15 -19
- package/dist/engine/compare.js +10 -0
- package/dist/engine/evaluate.js +2 -4
- package/dist/engine/explore.js +13 -56
- package/dist/engine/memberships.js +41 -15
- package/dist/engine/offers.js +18 -5
- package/dist/engine/periods.js +18 -0
- package/dist/engine/profiles.js +8 -0
- package/dist/engine/recommend.js +23 -37
- package/dist/engine/setup.js +28 -40
- package/dist/engine/simulate.js +11 -10
- package/dist/engine/text.js +49 -23
- package/dist/engine/valuation.js +1 -1
- package/dist/engine/wallet-change.js +26 -11
- package/dist/engine/wallet-summary.js +85 -31
- package/dist/format/card-text.js +19 -36
- package/dist/format/cards.js +3 -3
- package/dist/format/explore.js +15 -16
- package/dist/format/offers.js +10 -15
- package/dist/format/recommendation.js +6 -6
- package/dist/format/wallet.js +5 -2
- package/dist/import/analyze.js +2 -1
- package/dist/mcp/context.js +61 -13
- package/dist/mcp/inputs.js +16 -7
- package/dist/mcp/schemas.js +9 -0
- package/dist/mcp/server.js +8 -1
- package/dist/mcp/tools/account.js +45 -17
- package/dist/mcp/tools/answers.js +84 -29
- package/dist/mcp/tools/wallet.js +109 -22
- package/dist/merchants/cache.js +0 -10
- package/dist/merchants/resolve.js +81 -4
- package/dist/schema/card.js +8 -12
- package/dist/schema/category.js +4 -0
- package/dist/schema/currency.js +2 -0
- package/dist/schema/issuer.js +8 -0
- package/dist/schema/membership.js +15 -0
- package/dist/schema/merchant.js +4 -0
- package/dist/schema/wallet.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ earnrate add amex-gold
|
|
|
33
33
|
earnrate whole foods 80
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
Adding a card tells you anything else it needs to earn correctly, such as the categories you picked on Cash+, Amazon Prime for Prime Visa's 5%, or which rotating categories you've activated. `earnrate update`
|
|
36
|
+
Adding a card tells you anything else it needs to earn correctly, such as the categories you picked on Cash+, Amazon Prime for Prime Visa's 5%, or which rotating categories you've activated. `earnrate update` and `earnrate memberships` set those. Memberships and point values (`earnrate values`) can be saved without any cards, and every answer uses them. Using an AI assistant instead? [Add earnrate to it](#use-it-in-an-ai-assistant-mcp) and ask; name your cards or save them there.
|
|
37
37
|
|
|
38
38
|
With the [example wallet](wallet.example.yaml), it prints:
|
|
39
39
|
|
|
@@ -51,18 +51,19 @@ Use Blue Cash Preferred: 6% back, about $4.80. High confidence.
|
|
|
51
51
|
Valued at 1¢ per point: 4% back.
|
|
52
52
|
+ 6 more cards (--all lists them)
|
|
53
53
|
|
|
54
|
-
Amex Gold beats Blue Cash Preferred here if Amex Membership Rewards (MR) points are worth 1.5¢
|
|
54
|
+
Amex Gold beats Blue Cash Preferred here if Amex Membership Rewards (MR) points are worth more than 1.5¢ (you value them at 1¢).
|
|
55
55
|
|
|
56
56
|
Assumes Whole Foods Market codes as supermarkets (MCC 5411).
|
|
57
|
+
Values points at: Amex Membership Rewards (MR) at 1¢, SoFi Member Rewards at 1¢, Chase Ultimate Rewards (UR) at 1¢.
|
|
57
58
|
```
|
|
58
59
|
|
|
59
60
|
Options: `--online` or `--in-store`, `--valuation flat|points-heavy`, `--all`, `--json`, `--date`, `--country`. Run `earnrate --help` for details. To keep the wallet somewhere else, set `EARNRATE_WALLET` to its path.
|
|
60
61
|
|
|
61
|
-
`earnrate cheatsheet` prints the card to use for each everyday kind of purchase this quarter (groceries, dining, gas, Amazon, Costco, travel, streaming, drugstores, everything else), with your caps, picks and activations as they are now. It's also in the My wallet tab on [earnrate.dev](https://earnrate.dev).
|
|
62
|
+
`earnrate cheatsheet` prints the card to use for each everyday kind of purchase this quarter (groceries, dining, gas, Amazon, Costco, travel, streaming, drugstores, everything else), with your caps, picks and activations as they are now. `--cards` uses cards you name instead, and `--every-card` picks from every card to show what's worth getting. It's also in the My wallet tab on [earnrate.dev](https://earnrate.dev).
|
|
62
63
|
|
|
63
64
|
### Your wallet
|
|
64
65
|
|
|
65
|
-
The wallet is a YAML file (`~/.earnrate/wallet.yaml`) listing your cards by ID, which is each card's file name in [`data/cards/`](data/cards). `earnrate add`, `update`, `remove` and `
|
|
66
|
+
The wallet is a YAML file (`~/.earnrate/wallet.yaml`) listing your cards by ID, which is each card's file name in [`data/cards/`](data/cards). `earnrate add`, `update`, `remove`, `memberships` and `values` write it for you and keep your comments, or you can edit it by hand. Only the cards are required:
|
|
66
67
|
|
|
67
68
|
```yaml
|
|
68
69
|
version: 1 # the file's format; earnrate writes it
|
|
@@ -82,7 +83,7 @@ cards:
|
|
|
82
83
|
two-percent: [gas-ev-charging]
|
|
83
84
|
```
|
|
84
85
|
|
|
85
|
-
Rule IDs for `activated
|
|
86
|
+
Rule IDs for `activated` and the choice slots for `chosen` are in each card's file; membership IDs (such as `bofa-rewards-premier` for a BofA Rewards tier) are in [`data/memberships.yaml`](data/memberships.yaml), and `earnrate memberships` lists them. `earnrate values UR=1.5` saves what a program's points are worth to you; every answer uses it. Add `costco` if you have a Costco membership: Costco Anywhere needs one, and spending answers count its $65 a year unless you have it, hold the card or spend at Costco. Currencies and their default values are in [`data/currencies.yaml`](data/currencies.yaml). Spending caps fill up as you record purchases from an AI assistant or import a statement with `--apply`, and reset with each period.
|
|
86
87
|
|
|
87
88
|
### Merchants earnrate doesn't know
|
|
88
89
|
|
|
@@ -114,7 +115,7 @@ While the bonus is open and you're behind an even pace to the deadline, that car
|
|
|
114
115
|
|
|
115
116
|
### Which new card?
|
|
116
117
|
|
|
117
|
-
These compare every card earnrate knows:
|
|
118
|
+
These compare every card earnrate knows that's open to new applicants:
|
|
118
119
|
|
|
119
120
|
```sh
|
|
120
121
|
earnrate best groceries # every card, ranked for one purchase
|
|
@@ -122,13 +123,13 @@ earnrate simulate groceries=600 dining=300 other=1000 # best cards and pairs for
|
|
|
122
123
|
earnrate simulate groceries=600 other=1000 --wallet # what a new card would add to yours
|
|
123
124
|
```
|
|
124
125
|
|
|
125
|
-
`best` ranks every card earnrate knows for a merchant or a category, each set up at its best (the right category pick, activated, cap unused), with its annual fee and what earning the rate takes. Rates that need a membership like Amazon Prime are listed separately unless you pass `--member amazon-prime`, and a card that needs a membership to get (Costco Anywhere) says so. `simulate` spends your monthly amounts for a year, applying caps as they fill and reset, and ranks single cards and two-card pairs by rewards minus annual fees, counting the cost of a membership a card needs (Costco's, for Costco Anywhere) unless you
|
|
126
|
+
`best` ranks every card earnrate knows for a merchant or a category, each set up at its best (the right category pick, activated, cap unused), with its annual fee and what earning the rate takes. Rates that need a membership like Amazon Prime are listed separately unless you've saved it (`earnrate memberships amazon-prime`) or pass `--member amazon-prime`, and a card that needs a membership to get (Costco Anywhere) says so. `simulate` spends your monthly amounts for a year, applying caps as they fill and reset, and ranks single cards and two-card pairs by rewards minus annual fees, counting the cost of a membership a card needs (Costco's, for Costco Anywhere) unless you have it or spend at Costco. Both take `--no-fee`, `--cash` or `--points`, `--issuer`, `--business` and `--valuation`. Welcome bonuses are left out of both; for those:
|
|
126
127
|
|
|
127
128
|
```sh
|
|
128
129
|
earnrate offers --cash
|
|
129
130
|
```
|
|
130
131
|
|
|
131
|
-
Ranks the welcome offers on cards you don't have by first-year value: the bonus at your point values minus the first year's annual fee (and a membership the card needs, if you don't have it). An offer the issuer rules out because of a card in your wallet is marked "likely not eligible" and listed last. `--points`, `--no-fee` and `--business` narrow it down. Each offer is the public one on the issuer's page, checked weekly like the earning rules, with the issuer's eligibility rules in its note. Offers can differ by person and by how you apply, and it covers only the cards earnrate knows. There are no affiliate or apply links.
|
|
132
|
+
Ranks the welcome offers on cards you don't have by first-year value: the bonus at your point values minus the first year's annual fee (and a membership the card needs, if you don't have it). An offer the issuer rules out because of a card in your wallet (or one you name with `--cards`) is marked "likely not eligible" and listed last. `--points`, `--no-fee` and `--business` narrow it down. Each offer is the public one on the issuer's page, checked weekly like the earning rules, with the issuer's eligibility rules in its note. Offers can differ by person and by how you apply, and it covers only the cards earnrate knows. There are no affiliate or apply links.
|
|
132
133
|
|
|
133
134
|
### Import a statement
|
|
134
135
|
|
|
@@ -142,9 +143,9 @@ earnrate import gold.csv:amex-gold sapphire.csv:chase-sapphire-preferred
|
|
|
142
143
|
It totals what each card earned against the best card in your wallet for each purchase, lists the merchants where another card would have earned the most, and flags merchants your issuer codes differently than earnrate assumes. Name several statements, each with its card, to get one report across them. It reads Amex and Chase activity CSVs. Download the CSV rather than a PDF statement: Chase's PDFs print the full card number in the payment coupon, and earnrate never handles card numbers.
|
|
143
144
|
|
|
144
145
|
- It's a dry run unless you pass `--apply`, which records cap usage for the current period and spending toward an open welcome bonus in your wallet. Refunds lower both.
|
|
145
|
-
- Only the date, description, amount, category and (for Chase) transaction type columns are read. The statements themselves are never stored: `--apply` writes cap and bonus totals
|
|
146
|
+
- Only the date, description, amount, category and (for Chase) transaction type columns are read. The statements themselves are never stored: `--apply` writes cap and bonus totals to your wallet, and a hash of each recorded purchase to `imported.json` beside it, so importing the same file twice never counts twice.
|
|
146
147
|
- For a merchant earnrate doesn't know, it uses the statement's category and marks the row, since another issuer may code it differently.
|
|
147
|
-
- `--valuation points-heavy` values points at transfer rates instead of your wallet's values, which can change which card wins.
|
|
148
|
+
- `--valuation points-heavy` values Amex and Chase points at transfer rates instead of your wallet's values, which can change which card wins.
|
|
148
149
|
|
|
149
150
|
## Supported cards
|
|
150
151
|
|
|
@@ -176,16 +177,18 @@ claude mcp add --transport http earnrate https://mcp.earnrate.dev
|
|
|
176
177
|
|
|
177
178
|
Or install it as a Claude Code plugin, which connects Claude Code and Cowork to the same server: `/plugin marketplace add cwasley/earnrate`, then `/plugin install earnrate@earnrate`.
|
|
178
179
|
|
|
179
|
-
|
|
180
|
+
Use the connector (or plugin) or the local extension, not both: each keeps its own wallet, and with both connected Claude may answer from either. Each one says which wallet it used.
|
|
181
|
+
|
|
182
|
+
**Or run it on your computer:** `earnrate mcp` runs earnrate as a local MCP server over stdio, with 14 tools (the connector has the same ones, plus `export_wallet`, `import_wallet`, `delete_wallet` and `switch_wallet` for its saved wallets):
|
|
180
183
|
|
|
181
184
|
- `best_card_for_purchase`: which card to use, with reasons
|
|
182
185
|
- `best_cards_for` and `simulate_spending`: compare every card earnrate knows, for one purchase or a year of spending, with no wallet needed
|
|
183
186
|
- `resolve_merchant`: how a merchant was identified
|
|
184
|
-
- `list_wallet`: your cards, caps left this period, chosen categories
|
|
187
|
+
- `list_wallet`: your cards, caps left this period, chosen categories, welcome-bonus progress and the point values you've set
|
|
185
188
|
- `cheat_sheet`: the card to use for each everyday kind of purchase this quarter
|
|
186
189
|
- `compare_welcome_offers`: the best public sign-up offers on cards you don't have
|
|
187
190
|
- `record_purchase`: books a purchase against its cap and any open welcome bonus in your wallet file, keeping your comments
|
|
188
|
-
- `search_cards`, `add_card`, `update_card`, `remove_card` and `
|
|
191
|
+
- `search_cards`, `add_card`, `update_card`, `remove_card`, `set_memberships` and `set_point_values`: set up the wallet in conversation, including what your points are worth (memberships and point values need no cards)
|
|
189
192
|
|
|
190
193
|
Saving cards is optional: name them in the conversation for one answer, or ask the assistant to save them, and it finds them, adds them, and asks about anything a card needs, like this quarter's Cash+ picks.
|
|
191
194
|
|
|
@@ -243,9 +246,9 @@ Rotating categories (Freedom Flex) are added each quarter once the issuer posts
|
|
|
243
246
|
|
|
244
247
|
## Privacy Policy
|
|
245
248
|
|
|
246
|
-
earnrate needs no account. The local version has no telemetry; the hosted server counts requests by method
|
|
249
|
+
earnrate needs no account. The local version has no telemetry; the hosted server counts requests and errors by method, tool name or page only, never what was asked. The full policy is at [earnrate.dev/privacy](https://earnrate.dev/privacy); in short:
|
|
247
250
|
|
|
248
|
-
- **The Claude connector:** earnrate's server at mcp.earnrate.dev receives each question Claude asks it (a store or kind of purchase, and any amount, spending or cards you gave) and answers without keeping it; request logging is off. It counts requests by method
|
|
251
|
+
- **The Claude connector:** earnrate's server at mcp.earnrate.dev receives each question Claude asks it (a store or kind of purchase, and any amount, spending or cards you gave) and answers without keeping it; request logging is off. It counts requests and errors by method, tool name or page only. Connecting it starts an anonymous wallet (a recovery code, no email). It holds only what you save: card IDs and the details you gave, memberships and point values, never card numbers, and is encrypted with its own key that only your recovery code or your connected apps can unlock. Delete it any time; it's deleted automatically after 13 months unused, or a week if it's never used.
|
|
249
252
|
- **What it stores locally:** your wallet, a YAML file on your computer (`~/.earnrate/wallet.yaml` unless you set `EARNRATE_WALLET`). It lists cards by product ID, like `amex-gold`, plus your category picks, activations and how much you've spent toward caps. earnrate never asks for or stores card numbers, expiry dates, security codes or bank logins.
|
|
250
253
|
- **What the local version sends:** nothing, by default. The optional merchant lookup (off unless you turn it on with your own Anthropic API key) sends only the name of a store earnrate doesn't recognize to Anthropic's API, and saves the answer in `~/.earnrate/merchant-cache.json`.
|
|
251
254
|
- **AI assistants:** when you use earnrate through Claude or another assistant, that assistant's provider sees the conversation, including earnrate's answers, under its own privacy policy.
|
package/data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,85 @@
|
|
|
2
2
|
|
|
3
3
|
Every change to card rules, merchants, categories or currencies under `data/`. Bump `data/VERSION` (`YYYY.MM.DD`, plus `.N` for a second release on the same day) and add a section here in the same commit. Each row cites the issuer page the new value came from.
|
|
4
4
|
|
|
5
|
+
## 2026.11.02.2
|
|
6
|
+
|
|
7
|
+
Rules can carry `activate_by`, the issuer's activation deadline, so answers mention it only while a bonus isn't activated. No rates changed.
|
|
8
|
+
|
|
9
|
+
| Card | Field | Old → new | Source |
|
|
10
|
+
| ------------------ | --------------------- | ------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
11
|
+
| chase-freedom-flex | q4-2026-*.activate_by | "Activate by December 14, 2026" in each note → `activate_by: 2026-12-14` | [Freedom Flex FAQ](https://www.chase.com/personal/credit-cards/freedom/flex-learnmore): "This quarter, the deadline for activation is December 14, 2026" |
|
|
12
|
+
|
|
13
|
+
## 2026.11.02.1
|
|
14
|
+
|
|
15
|
+
A fine-print pass: every card was checked against all of its issuer's pages (card page, rates and fees, rewards and offer terms, FAQ), and the readable ones were added to `source_urls` so the weekly check watches them. All 57 cards are now `verified_by: claude`, last verified 2026-11-01. Most changes add fine-print quotes and exclusions to notes; these change answers:
|
|
16
|
+
|
|
17
|
+
| Card | Field | Old → new | Source |
|
|
18
|
+
| ----------------------------------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
19
|
+
| chase-freedom-flex | q4-2026-dining.rate | 5 → 7 | [Freedom Flex FAQ](https://www.chase.com/personal/credit-cards/freedom/flex-learnmore): "For Dining purchases, you will earn 7% cash back" |
|
|
20
|
+
| chase-freedom-flex | q1-2027-streaming.match | streaming category → Chase's 18 listed services | [rewards category FAQ](https://www.chase.com/personal/credit-cards/rewards-category-faq) |
|
|
21
|
+
| chase-sapphire-preferred | streaming.match | streaming category → Chase's 18 listed services | [rewards category FAQ](https://www.chase.com/personal/credit-cards/rewards-category-faq) |
|
|
22
|
+
| chase-sapphire-preferred | peloton (new) | 5x through 2027-12-31, U.S. | [card page](https://creditcards.chase.com/rewards-credit-cards/sapphire/preferred) |
|
|
23
|
+
| chase-prime-visa | whole-foods.geography | worldwide → us_only | [card page](https://creditcards.chase.com/cash-back-credit-cards/amazon-prime-rewards) |
|
|
24
|
+
| amex-platinum | prepaid-car-rental-amex-travel (new) | 1x → 2x on prepaid Amex Travel car rentals | [offer terms](https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/platinum-card/25330-10-0#offer-terms) |
|
|
25
|
+
| amex-blue-cash-preferred | us-streaming.exclude | + Fandango at Home (not on Amex's list) | [Amex rewards categories](https://www.americanexpress.com/us/content/rewards-info/retail.html) |
|
|
26
|
+
| amex-blue-cash-everyday | us-online-retail.match | + superstores and drugstores, online | [Amex rewards categories](https://www.americanexpress.com/us/content/rewards-info/retail.html) |
|
|
27
|
+
| capital-one-savor | grocery-stores.exclude | + warehouse clubs, convenience stores | [disclosures](https://disclosures.capitalone.com/disclosure.42167.en-US.html) |
|
|
28
|
+
| citi-custom-cash | top-category | restaurants pick split out; Dodger Stadium and Bellagio earn 5% under their own picks | [Custom Cash terms](https://www.thankyou.com/ccterms) |
|
|
29
|
+
| citi-aadvantage-executive | welcome_offer | 125,000 / $15,000 / 5 months → 80,000 / $8,000 / 3 months | [card page](https://www.citi.com/credit-cards/citi-aadvantage-executive-world-legend-mastercard) |
|
|
30
|
+
| usbank-cash-plus | five-percent.exclude, two-percent.exclude | + parking and tolls; + fast food at 2% | [sample merchants](https://cashplus.usbank.com/cash-plus/samplemerchants) |
|
|
31
|
+
| wells-fargo-autograph | dining.exclude, gas.exclude | + DoorDash, Uber Eats; + superstore and grocery-store gas | [Autograph terms](https://www.wellsfargo.com/credit-cards/autograph-visa/terms/) |
|
|
32
|
+
| bank-of-america-atmos-rewards-ascent, -business | 2x rules exclude | + parking (MCC 7523) | [Ascent terms](https://www.bankofamerica.com/credit-cards/terms-and-conditions/?campaignid=4081060&productoffercode=RS&locale=en_US) |
|
|
33
|
+
| td-bank-nordstrom-visa | caterers (new) | 2x at caterers (MCC 5811) | [Nordstrom Visa terms](https://www.nordstrom.com/browse/nordy-club/terms-conditions) |
|
|
34
|
+
| merchants/seed.yaml | peacock, showtime (new) | streaming merchants on Chase's list | [rewards category FAQ](https://www.chase.com/personal/credit-cards/rewards-category-faq) |
|
|
35
|
+
|
|
36
|
+
## 2026.11.02
|
|
37
|
+
|
|
38
|
+
Issuer names and the words people search for them by (`bofa`, `amex`) move from code to `data/issuers.yaml`; every card's issuer must be listed there. Cash+'s annual fee quote now matches both layouts of U.S. Bank's page. No rates changed.
|
|
39
|
+
|
|
40
|
+
| File or card | Field | Old → new | Source |
|
|
41
|
+
| ---------------- | ------------------- | -------------------------------------------- | ------------------------------------------------------------------------------------------ |
|
|
42
|
+
| issuers.yaml | (new) | names and search words for the 10 issuers | n/a |
|
|
43
|
+
| usbank-cash-plus | annual_fee evidence | "ANNUAL FEE $0 Annual fee" → "$0 Annual fee" | [card page](https://www.usbank.com/credit-cards/cash-plus-visa-signature-credit-card.html) |
|
|
44
|
+
|
|
45
|
+
## 2026.11.01.7
|
|
46
|
+
|
|
47
|
+
Currencies can name how a redemption reads (`redemption_names`), so a wallet valuing SoFi points by redeeming into a SoFi account says so. No rates changed.
|
|
48
|
+
|
|
49
|
+
| Currency | Field | Old → new | Source |
|
|
50
|
+
| ------------ | ---------------- | ----------------------------------- | ------ |
|
|
51
|
+
| sofi-rewards | redemption_names | sofi-account: "into a SoFi account" | n/a |
|
|
52
|
+
|
|
53
|
+
## 2026.11.01.6
|
|
54
|
+
|
|
55
|
+
Freedom Flex's dining note says 5x rather than 5%, since its points can pool into Ultimate Rewards worth more than 1¢. No rates changed.
|
|
56
|
+
|
|
57
|
+
| Card | Field | Old → new | Source |
|
|
58
|
+
| ------------------ | ------------------- | ---------------------- | ------------------------------------------------------------------------------ |
|
|
59
|
+
| chase-freedom-flex | q4-2026-dining.note | "5x (5% as cash back)" | [card page](https://creditcards.chase.com/cash-back-credit-cards/freedom/flex) |
|
|
60
|
+
|
|
61
|
+
## 2026.11.01.5
|
|
62
|
+
|
|
63
|
+
Offers the issuer rules out for holders of another card, and Bank of America's terms for the Atmos account bonus. No rates changed.
|
|
64
|
+
|
|
65
|
+
| Card | Field | Old → new | Source |
|
|
66
|
+
| -------------------------------------------------------- | ----------------------- | ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
67
|
+
| td-bank-nordstrom-credit-card, td-bank-nordstrom-visa | welcome_offer.not_with | each other | [offer terms](https://www.nordstrom.com/becomecardmember) |
|
|
68
|
+
| chase-ihg-one-rewards, chase-ihg-one-rewards-premier | welcome_offer.not_with | the other personal IHG cards | [One Rewards](https://creditcards.chase.com/travel-credit-cards/ihg-rewards-club/one-rewards), [Premier](https://creditcards.chase.com/travel-credit-cards/ihg-rewards-club/premier) |
|
|
69
|
+
| amex-gold | welcome_offer.not_with | amex-platinum | [offer terms](https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/gold-card/25330-10-0#offer-terms) |
|
|
70
|
+
| bank-of-america-atmos-rewards-ascent, -summit, -business | evidence | the qualifying account, from each card's terms | [Ascent](https://www.bankofamerica.com/credit-cards/terms-and-conditions/?campaignid=4081060&productoffercode=RS&locale=en_US), [Summit](https://www.bankofamerica.com/credit-cards/terms-and-conditions/?campaignid=4081112&productoffercode=S2&locale=en_US), [Business](https://www.bankofamerica.com/smallbusiness/credit-cards/terms-and-conditions/?campaignid=4080500&productoffercode=CX&locale=en_US) |
|
|
71
|
+
| chase-united-club | welcome_offer.note | says the business card isn't clearly covered | [card page](https://creditcards.chase.com/travel-credit-cards/united/united-club) |
|
|
72
|
+
| chase-ihg-one-rewards | todo | the $15,000 spend milestone isn't modeled | [card page](https://creditcards.chase.com/travel-credit-cards/ihg-rewards-club/one-rewards) |
|
|
73
|
+
| categories.yaml, merchants/overrides.yaml | preposition, slug, kind | categories bought as a service read "on"; travel sites and bookings through them are marked | n/a |
|
|
74
|
+
|
|
75
|
+
## 2026.11.01.4
|
|
76
|
+
|
|
77
|
+
Memberships move to `data/memberships.yaml`: each one's name, the site's checkbox label (`ask`) for the common ones, the Costco membership's fee and the stores that imply it, and the BofA Preferred Rewards tiers as one group. Cards name the membership they need by id (`requires_membership: costco`). No rates changed.
|
|
78
|
+
|
|
79
|
+
| File | Field | Old → new | Source |
|
|
80
|
+
| ------------------------------------ | ------------------- | ---------------------------------------- | ------ |
|
|
81
|
+
| memberships.yaml | (new) | names, Costco fee and stores, BofA tiers | n/a |
|
|
82
|
+
| citi-costco-anywhere-visa, -business | requires_membership | inline block → `costco` | n/a |
|
|
83
|
+
|
|
5
84
|
## 2026.11.01.3
|
|
6
85
|
|
|
7
86
|
Welcome offers can name other cards whose holders the issuer rules out (`welcome_offer.not_with`), so offer comparisons mark them and list them last for a wallet holding one. No rates changed.
|
package/data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
2026.11.
|
|
1
|
+
2026.11.02.2
|
|
@@ -3,10 +3,11 @@ name: American Express Blue Business Plus Credit Card
|
|
|
3
3
|
issuer: amex
|
|
4
4
|
network: amex
|
|
5
5
|
currency: MR
|
|
6
|
-
last_verified: 2026-
|
|
7
|
-
verified_by:
|
|
6
|
+
last_verified: 2026-11-01
|
|
7
|
+
verified_by: claude
|
|
8
8
|
source_urls:
|
|
9
9
|
- https://www.americanexpress.com/us/credit-cards/business/business-credit-cards/american-express-blue-business-plus-credit-card-amex/
|
|
10
|
+
- https://www.americanexpress.com/en-us/credit-cards/apply/terms/business/prospect/bluebusinessplus-credit-card/45094-9-0
|
|
10
11
|
base_rate: 1
|
|
11
12
|
business: true
|
|
12
13
|
annual_fee: 0
|
|
@@ -15,7 +16,7 @@ welcome_offer:
|
|
|
15
16
|
spend: 5000
|
|
16
17
|
months: 3
|
|
17
18
|
varies: true
|
|
18
|
-
note: 'The public offer is "as high as" 50,000 points; Amex shows the exact amount after you apply.
|
|
19
|
+
note: 'The public offer is "as high as" 50,000 points; Amex shows the exact amount after you apply and before you accept. Not available if you have or have had this Card or previous versions of it, and Amex may also decline based on your card history. One offer per Card Account.'
|
|
19
20
|
rules:
|
|
20
21
|
- id: amex-travel
|
|
21
22
|
match:
|
|
@@ -29,7 +30,7 @@ rules:
|
|
|
29
30
|
amex-travel-cruises,
|
|
30
31
|
]
|
|
31
32
|
rate: 2
|
|
32
|
-
note:
|
|
33
|
+
note: Scheduled flights, prepaid hotels, prepaid car rentals, cruises and prepaid Airbnb stays booked on AmexTravel.com or the Amex Travel app. Non-prepaid hotels and car rentals earn 1X. They don't count toward the $50,000 cap.
|
|
33
34
|
- id: everyday-purchases
|
|
34
35
|
match: { any: true }
|
|
35
36
|
rate: 2
|
|
@@ -50,14 +51,21 @@ evidence:
|
|
|
50
51
|
- rule: amex-travel
|
|
51
52
|
url: https://www.americanexpress.com/us/credit-cards/business/business-credit-cards/american-express-blue-business-plus-credit-card-amex/
|
|
52
53
|
quote: 'Eligible purchases on AmexTravel.com also earn 2X points and will not count toward the first $50,000'
|
|
54
|
+
- rule: amex-travel
|
|
55
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/business/prospect/bluebusinessplus-credit-card/45094-9-0
|
|
56
|
+
quote: 'Eligible travel bookings do NOT include non-prepaid car rentals, non-prepaid hotels'
|
|
57
|
+
- rule: everyday-purchases
|
|
58
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/business/prospect/bluebusinessplus-credit-card/45094-9-0
|
|
59
|
+
quote: 'For the first $50,000 in eligible purchases in each calendar year you also earn one additional point'
|
|
53
60
|
- rule: annual_fee
|
|
54
61
|
url: https://www.americanexpress.com/us/credit-cards/business/business-credit-cards/american-express-blue-business-plus-credit-card-amex/
|
|
55
62
|
quote: 'Annual Fee: $0'
|
|
63
|
+
- rule: welcome_offer
|
|
64
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/business/prospect/bluebusinessplus-credit-card/45094-9-0
|
|
65
|
+
quote: 'if you have or have had this Card or previous versions of this Card'
|
|
56
66
|
- rule: welcome_offer
|
|
57
67
|
url: https://www.americanexpress.com/us/credit-cards/business/business-credit-cards/american-express-blue-business-plus-credit-card-amex/
|
|
58
68
|
quote: 'AS HIGH AS 50,000 Membership Rewards® Points'
|
|
59
69
|
- rule: welcome_offer
|
|
60
70
|
url: https://www.americanexpress.com/us/credit-cards/business/business-credit-cards/american-express-blue-business-plus-credit-card-amex/
|
|
61
71
|
quote: 'after you spend $5,000 in purchases on your new Card within the first 3 months of Card Membership'
|
|
62
|
-
todo:
|
|
63
|
-
- 'The offer-terms page (https://www.americanexpress.com/en-us/credit-cards/apply/terms/business/prospect/bluebusinessplus-credit-card/53591-9-0) returned only 735 characters to the headless browser, so it was not checked. Rates come from the card page only; what counts as an eligible purchase is unconfirmed.'
|
|
@@ -3,11 +3,12 @@ name: American Express Blue Cash Everyday Card
|
|
|
3
3
|
issuer: amex
|
|
4
4
|
network: amex
|
|
5
5
|
currency: cash
|
|
6
|
-
last_verified: 2026-
|
|
6
|
+
last_verified: 2026-11-01
|
|
7
7
|
verified_by: claude
|
|
8
8
|
source_urls:
|
|
9
9
|
- https://www.americanexpress.com/us/credit-cards/card/blue-cash-everyday/
|
|
10
10
|
- https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-everyday-credit-card/25330-10-0
|
|
11
|
+
- https://www.americanexpress.com/us/content/rewards-info/retail.html
|
|
11
12
|
base_rate: 1
|
|
12
13
|
annual_fee: 0
|
|
13
14
|
welcome_offer:
|
|
@@ -30,6 +31,8 @@ rules:
|
|
|
30
31
|
categories:
|
|
31
32
|
[
|
|
32
33
|
online_retail,
|
|
34
|
+
superstore,
|
|
35
|
+
drugstore,
|
|
33
36
|
department_store,
|
|
34
37
|
clothing,
|
|
35
38
|
electronics,
|
|
@@ -41,7 +44,7 @@ rules:
|
|
|
41
44
|
channel: online
|
|
42
45
|
geography: us_only
|
|
43
46
|
cap: { amount: 6000, period: calendar_year, then_rate: 1 }
|
|
44
|
-
note: U.S. merchants selling physical goods, paid on their website or app. Not restaurants, supermarkets, gas, car dealers, travel, entertainment or services. Ordered online but paid in store, in-store mobile wallet, phone or mail orders, and buy-now-pay-later don't count.
|
|
47
|
+
note: U.S. merchants selling physical goods, paid on their website or app, such as Amazon.com, Walmart.com, Chewy.com, Wayfair.com and drugstore sites. Not restaurants, supermarkets, gas, car dealers, travel, entertainment or services, and not online grocery orders, food delivery, rideshare, streaming or wireless bills. Ordered online but paid in store, in-store mobile wallet, phone or mail orders, and buy-now-pay-later don't count.
|
|
45
48
|
- id: us-gas
|
|
46
49
|
match: { categories: [gas] }
|
|
47
50
|
exclude: { categories: [gas.grocery_store, gas.superstore] }
|
|
@@ -68,6 +71,12 @@ evidence:
|
|
|
68
71
|
- rule: us-online-retail
|
|
69
72
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-everyday-credit-card/25330-10-0
|
|
70
73
|
quote: 'from a U.S. retail merchant that sells physical goods or merchandise directly to consumers'
|
|
74
|
+
- rule: us-online-retail
|
|
75
|
+
url: https://www.americanexpress.com/us/content/rewards-info/retail.html
|
|
76
|
+
quote: 'Major retailers (e.g., Amazon.com, Walmart.com)'
|
|
77
|
+
- rule: us-online-retail
|
|
78
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-everyday-credit-card/25330-10-0
|
|
79
|
+
quote: 'Basic Card Members will not receive 3% cash back for purchases ordered online but paid for in store'
|
|
71
80
|
- rule: us-gas
|
|
72
81
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-everyday-credit-card/25330-10-0
|
|
73
82
|
quote: '3% cash back on the first $6,000 of purchases of gasoline at gas stations'
|
|
@@ -87,4 +96,4 @@ evidence:
|
|
|
87
96
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-everyday-credit-card/25330-10-0
|
|
88
97
|
quote: 'if you have or have had this Card, the Cash Magnet® Card, the Blue Cash Preferred® Card'
|
|
89
98
|
todo:
|
|
90
|
-
- '
|
|
99
|
+
- "Amex's online retail examples name Walmart.com and drug stores, so superstore and drugstore sites earn 3% here; online grocery orders don't, but a grocery order on walmart.com or target.com can't be told apart from other purchases there. Warehouse club sites (costco.com, samsclub.com) aren't named, so they aren't modeled."
|
|
@@ -3,11 +3,12 @@ name: American Express Blue Cash Preferred Card
|
|
|
3
3
|
issuer: amex
|
|
4
4
|
network: amex
|
|
5
5
|
currency: cash
|
|
6
|
-
last_verified: 2026-
|
|
6
|
+
last_verified: 2026-11-01
|
|
7
7
|
verified_by: claude
|
|
8
8
|
source_urls:
|
|
9
9
|
- https://www.americanexpress.com/us/credit-cards/card/blue-cash-preferred/
|
|
10
10
|
- https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-preferred-credit-card/25330-10-0#offer-terms
|
|
11
|
+
- https://www.americanexpress.com/us/content/rewards-info/retail.html
|
|
11
12
|
base_rate: 1
|
|
12
13
|
annual_fee: 95
|
|
13
14
|
first_year_fee: 0
|
|
@@ -27,13 +28,14 @@ rules:
|
|
|
27
28
|
note: Superstores, convenience stores, warehouse clubs and meal-kit delivery services are not supermarkets.
|
|
28
29
|
- id: us-streaming
|
|
29
30
|
match: { categories: [streaming] }
|
|
31
|
+
exclude: { merchants: [fandango-at-home] }
|
|
30
32
|
rate: 6
|
|
31
33
|
geography: us_only
|
|
32
|
-
note:
|
|
34
|
+
note: Only providers on Amex's Select U.S. Streaming Subscriptions list (americanexpress.com/rewards-info), such as Netflix, Hulu, Disney+, HBO Max, Spotify, Apple Music, YouTube TV and SiriusXM. Subscriptions bundled with or billed by another company (cable, phone, a car maker) may not count.
|
|
33
35
|
- id: transit
|
|
34
36
|
match: { categories: [transit] }
|
|
35
37
|
rate: 3
|
|
36
|
-
note: Trains, taxis, rideshare, ferries, tolls, parking, buses and subways. Airfare, car rental and
|
|
38
|
+
note: Trains, taxis, rideshare, ferries, tolls, parking, buses and subways. Airfare, car rental, cruises and trams aren't transit.
|
|
37
39
|
- id: us-gas
|
|
38
40
|
match: { categories: [gas] }
|
|
39
41
|
exclude: { categories: [gas.grocery_store, gas.superstore] }
|
|
@@ -48,15 +50,27 @@ evidence:
|
|
|
48
50
|
- rule: us-supermarkets
|
|
49
51
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-preferred-credit-card/25330-10-0#offer-terms
|
|
50
52
|
quote: 'at supermarkets located in the U.S. (superstores, convenience stores, warehouse clubs,'
|
|
53
|
+
- rule: us-supermarkets
|
|
54
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-preferred-credit-card/25330-10-0#offer-terms
|
|
55
|
+
quote: '6% cash back on the first $6,000 of eligible purchases in a calendar year'
|
|
51
56
|
- rule: us-streaming
|
|
52
57
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-preferred-credit-card/25330-10-0#offer-terms
|
|
53
58
|
quote: '6% cash back on eligible purchases of U.S. streaming subscriptions'
|
|
59
|
+
- rule: us-streaming
|
|
60
|
+
url: https://www.americanexpress.com/us/content/rewards-info/retail.html
|
|
61
|
+
quote: 'must be made from a provider that is included on our list of Select U.S. Streaming Subscriptions'
|
|
54
62
|
- rule: transit
|
|
55
63
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-preferred-credit-card/25330-10-0#offer-terms
|
|
56
64
|
quote: '3% cash back on eligible purchases on transit, including trains,'
|
|
65
|
+
- rule: transit
|
|
66
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-preferred-credit-card/25330-10-0#offer-terms
|
|
67
|
+
quote: '(airfare, car rental and cruises are not considered transit)'
|
|
57
68
|
- rule: us-gas
|
|
58
69
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-preferred-credit-card/25330-10-0#offer-terms
|
|
59
70
|
quote: 'purchases of gasoline at gas stations located in the U.S.'
|
|
71
|
+
- rule: us-gas
|
|
72
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/blue-cash-preferred-credit-card/25330-10-0#offer-terms
|
|
73
|
+
quote: 'superstores, supermarkets and warehouse clubs that sell gasoline are not considered gas stations'
|
|
60
74
|
- rule: annual_fee
|
|
61
75
|
url: https://www.americanexpress.com/us/credit-cards/card/blue-cash-preferred/
|
|
62
76
|
quote: '$0 intro annual fee for the first year, then $95'
|
|
@@ -3,11 +3,12 @@ name: American Express Gold Card
|
|
|
3
3
|
issuer: amex
|
|
4
4
|
network: amex
|
|
5
5
|
currency: MR
|
|
6
|
-
last_verified: 2026-
|
|
7
|
-
verified_by:
|
|
6
|
+
last_verified: 2026-11-01
|
|
7
|
+
verified_by: claude
|
|
8
8
|
source_urls:
|
|
9
9
|
- https://www.americanexpress.com/us/credit-cards/card/gold-card/
|
|
10
10
|
- https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/gold-card/25330-10-0#offer-terms
|
|
11
|
+
- https://www.americanexpress.com/us/content/rewards-info/retail.html
|
|
11
12
|
base_rate: 1
|
|
12
13
|
annual_fee: 325
|
|
13
14
|
welcome_offer:
|
|
@@ -15,6 +16,7 @@ welcome_offer:
|
|
|
15
16
|
spend: 8000
|
|
16
17
|
months: 6
|
|
17
18
|
varies: true
|
|
19
|
+
not_with: [amex-platinum]
|
|
18
20
|
note: 'The public offer is "as high as" 100,000 points; Amex shows the exact amount (which may be lower, or no offer) after you apply and before you accept. Not available if you have or have had this Card, the Premier Rewards Gold Card, the Platinum Card (including the Schwab and Morgan Stanley versions) or previous versions of these Cards; Amex may also decline based on your card history.'
|
|
19
21
|
rules:
|
|
20
22
|
- id: restaurants
|
|
@@ -22,7 +24,7 @@ rules:
|
|
|
22
24
|
rate: 4
|
|
23
25
|
cap: { amount: 50000, period: calendar_year, then_rate: 1 }
|
|
24
26
|
exclude: { merchants: [dodger-stadium, bellagio], mccs: [5813] }
|
|
25
|
-
note: Worldwide. Not at restaurants inside hotels, casinos or event venues, or at bars, bakeries, cafeterias or
|
|
27
|
+
note: Worldwide, fast food included. Not at restaurants inside hotels, casinos or event venues, at events or for event tickets, or at bars, nightclubs, breweries, bakeries, cafeterias, caterers, theatre clubs or meeting venues. Third-party delivery counts only in the U.S.
|
|
26
28
|
- id: us-supermarkets
|
|
27
29
|
match: { categories: [grocery.supermarket] }
|
|
28
30
|
exclude: { categories: [superstore, warehouse_club, convenience_store] }
|
|
@@ -63,12 +65,27 @@ evidence:
|
|
|
63
65
|
- rule: restaurants
|
|
64
66
|
url: https://www.americanexpress.com/us/credit-cards/card/gold-card/
|
|
65
67
|
quote: '4X POINTS At Restaurants Worldwide, on up to $50K'
|
|
68
|
+
- rule: restaurants
|
|
69
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/gold-card/25330-10-0#offer-terms
|
|
70
|
+
quote: 'on the first $50,000 of eligible purchases per calendar year at restaurants worldwide'
|
|
71
|
+
- rule: restaurants
|
|
72
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/gold-card/25330-10-0#offer-terms
|
|
73
|
+
quote: 'purchases at bars, nightclubs, cafeterias, caterers, theatre clubs, breweries, bakeries, and meeting venues'
|
|
74
|
+
- rule: restaurants
|
|
75
|
+
url: https://www.americanexpress.com/us/content/rewards-info/retail.html
|
|
76
|
+
quote: 'fast food restaurants are included in the global restaurants rewards category'
|
|
66
77
|
- rule: us-supermarkets
|
|
67
78
|
url: https://www.americanexpress.com/us/credit-cards/card/gold-card/
|
|
68
79
|
quote: '4X POINTS On Groceries At U.S. supermarkets, on up to $25K'
|
|
80
|
+
- rule: us-supermarkets
|
|
81
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/gold-card/25330-10-0#offer-terms
|
|
82
|
+
quote: 'warehouse clubs, and meal-kit delivery services are not considered supermarkets'
|
|
69
83
|
- rule: flights
|
|
70
84
|
url: https://www.americanexpress.com/us/credit-cards/card/gold-card/
|
|
71
85
|
quote: '3X POINTS On Flights Booked through AmexTravel.com or Amex Travel App™'
|
|
86
|
+
- rule: flights
|
|
87
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/gold-card/25330-10-0#offer-terms
|
|
88
|
+
quote: 'charged directly with passenger airlines (charter flights and private jet flights are excluded)'
|
|
72
89
|
- rule: prepaid-hotels-amex-travel
|
|
73
90
|
url: https://www.americanexpress.com/us/credit-cards/card/gold-card/
|
|
74
91
|
quote: '5X Points per dollar spent on Prepaid Hotels booked through AmexTravel.com'
|
|
@@ -93,3 +110,6 @@ evidence:
|
|
|
93
110
|
- rule: welcome_offer
|
|
94
111
|
url: https://www.americanexpress.com/us/credit-cards/card/gold-card/
|
|
95
112
|
quote: 'after you spend $8,000 in purchases on your new Card within the first 6 months'
|
|
113
|
+
- rule: not_with
|
|
114
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/gold-card/25330-10-0#offer-terms
|
|
115
|
+
quote: 'if you have or have had this Card, the Premier Rewards Gold Card, the Platinum Card'
|
|
@@ -3,8 +3,8 @@ name: The Platinum Card from American Express
|
|
|
3
3
|
issuer: amex
|
|
4
4
|
network: amex
|
|
5
5
|
currency: MR
|
|
6
|
-
last_verified: 2026-
|
|
7
|
-
verified_by:
|
|
6
|
+
last_verified: 2026-11-01
|
|
7
|
+
verified_by: claude
|
|
8
8
|
source_urls:
|
|
9
9
|
- https://www.americanexpress.com/us/credit-cards/card/platinum/
|
|
10
10
|
- https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/platinum-card/25330-10-0#offer-terms
|
|
@@ -37,10 +37,14 @@ rules:
|
|
|
37
37
|
match: { merchants: [airbnb-amex-travel] }
|
|
38
38
|
rate: 5
|
|
39
39
|
note: Prepaid Airbnb stays booked through Amex Travel, with your Airbnb account linked to Amex.
|
|
40
|
+
- id: prepaid-car-rental-amex-travel
|
|
41
|
+
match: { merchants: [amex-travel-car-rentals] }
|
|
42
|
+
rate: 2
|
|
43
|
+
note: Prepaid car rentals only.
|
|
40
44
|
- id: cruises-amex-travel
|
|
41
45
|
match: { merchants: [amex-travel-cruises] }
|
|
42
46
|
rate: 2
|
|
43
|
-
note:
|
|
47
|
+
note: Cruises booked and charged through AmexTravel.com or by phone with Amex Travel. Payments made directly to the cruise line don't count.
|
|
44
48
|
# Issuer text backing each rule; `yarn check-sources` checks it weekly.
|
|
45
49
|
evidence:
|
|
46
50
|
- rule: base_rate
|
|
@@ -49,6 +53,15 @@ evidence:
|
|
|
49
53
|
- rule: flights
|
|
50
54
|
url: https://www.americanexpress.com/us/credit-cards/card/platinum/
|
|
51
55
|
quote: '5X POINTS On Flights Booked directly with airlines or through'
|
|
56
|
+
- rule: flights
|
|
57
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/platinum-card/25330-10-0#offer-terms
|
|
58
|
+
quote: 'air tickets on scheduled flights, of up to $500,000 in charges per calendar year'
|
|
59
|
+
- rule: flights
|
|
60
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/platinum-card/25330-10-0#offer-terms
|
|
61
|
+
quote: 'charter flights, private jet flights, flights that are part of tours, cruises, or travel packages'
|
|
62
|
+
- rule: prepaid-car-rental-amex-travel
|
|
63
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/platinum-card/25330-10-0#offer-terms
|
|
64
|
+
quote: 'prepaid car rental bookings through AmexTravel.com or the Amex Travel'
|
|
52
65
|
- rule: prepaid-hotels-amex-travel
|
|
53
66
|
url: https://www.americanexpress.com/us/credit-cards/card/platinum/
|
|
54
67
|
quote: '5X POINTS On Prepaid Hotels Booked through American Express Travel ®'
|
|
@@ -58,6 +71,9 @@ evidence:
|
|
|
58
71
|
- rule: cruises-amex-travel
|
|
59
72
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/platinum-card/25330-10-0#offer-terms
|
|
60
73
|
quote: 'only eligible for 1 additional point on cruise reservations'
|
|
74
|
+
- rule: cruises-amex-travel
|
|
75
|
+
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/platinum-card/25330-10-0#offer-terms
|
|
76
|
+
quote: 'prepaid cruise reservations booked through AmexTravel.com or by calling the phone number'
|
|
61
77
|
- rule: flights-amex-travel
|
|
62
78
|
url: https://www.americanexpress.com/en-us/credit-cards/apply/terms/personal/platinum-card/25330-10-0#offer-terms
|
|
63
79
|
quote: 'booked directly with passenger airlines or through American Express Travel'
|
|
@@ -3,10 +3,11 @@ name: Atmos Rewards Ascent Visa Signature Credit Card
|
|
|
3
3
|
issuer: bank-of-america
|
|
4
4
|
network: visa
|
|
5
5
|
currency: atmos-points
|
|
6
|
-
last_verified: 2026-
|
|
6
|
+
last_verified: 2026-11-01
|
|
7
7
|
verified_by: claude
|
|
8
8
|
source_urls:
|
|
9
9
|
- https://www.bankofamerica.com/credit-cards/products/alaska-airlines-credit-card/
|
|
10
|
+
- https://www.bankofamerica.com/credit-cards/terms-and-conditions/?campaignid=4081060&productoffercode=RS&locale=en_US
|
|
10
11
|
base_rate: 1
|
|
11
12
|
annual_fee: 95
|
|
12
13
|
welcome_offer:
|
|
@@ -21,8 +22,9 @@ rules:
|
|
|
21
22
|
note: Card points only; points and status from flying aren't card earnings.
|
|
22
23
|
- id: gas-ev-cable-streaming-transit
|
|
23
24
|
match: { categories: [gas, ev_charging, tv_internet, streaming, transit] }
|
|
25
|
+
exclude: { mccs: [7523] }
|
|
24
26
|
rate: 2
|
|
25
|
-
note: Local transit includes rideshare
|
|
27
|
+
note: Local transit includes rideshare, trains, buses, ferries and tolls; parking isn't on Bank of America's list. Cable means cable, satellite and other pay TV or streaming; internet-only or phone bills may not count.
|
|
26
28
|
- id: alaska-and-hawaiian-with-boa-account
|
|
27
29
|
match: { merchants: [alaska-airlines, hawaiian-airlines] }
|
|
28
30
|
rate: 3.3
|
|
@@ -30,6 +32,7 @@ rules:
|
|
|
30
32
|
note: 3x plus the 10% rewards bonus for holding an eligible Bank of America account.
|
|
31
33
|
- id: gas-ev-cable-streaming-transit-with-boa-account
|
|
32
34
|
match: { categories: [gas, ev_charging, tv_internet, streaming, transit] }
|
|
35
|
+
exclude: { mccs: [7523] }
|
|
33
36
|
rate: 2.2
|
|
34
37
|
requires: { membership: bank-of-america-account }
|
|
35
38
|
note: 2x plus the 10% rewards bonus for holding an eligible Bank of America account.
|
|
@@ -48,6 +51,12 @@ evidence:
|
|
|
48
51
|
- rule: gas-ev-cable-streaming-transit
|
|
49
52
|
url: https://www.bankofamerica.com/credit-cards/products/alaska-airlines-credit-card/
|
|
50
53
|
quote: 'eligible gas, EV charging station, cable, streaming services and local transit purchases, including rideshare'
|
|
54
|
+
- rule: gas-ev-cable-streaming-transit
|
|
55
|
+
url: https://www.bankofamerica.com/credit-cards/terms-and-conditions/?campaignid=4081060&productoffercode=RS&locale=en_US
|
|
56
|
+
quote: 'Passenger Railways; Taxicabs and Limousines (including rideshare); Bus Lines; Tolls and Bridge Fees'
|
|
57
|
+
- rule: gas-ev-cable-streaming-transit
|
|
58
|
+
url: https://www.bankofamerica.com/credit-cards/terms-and-conditions/?campaignid=4081060&productoffercode=RS&locale=en_US
|
|
59
|
+
quote: 'Cable, Satellite and Other Pay Television/Radio/Streaming Services'
|
|
51
60
|
- rule: alaska-and-hawaiian-with-boa-account
|
|
52
61
|
url: https://www.bankofamerica.com/credit-cards/products/alaska-airlines-credit-card/
|
|
53
62
|
quote: '10% rewards bonus on all points earned from card purchases if you have an eligible Bank of America® account'
|
|
@@ -66,6 +75,9 @@ evidence:
|
|
|
66
75
|
- rule: welcome_offer
|
|
67
76
|
url: https://www.bankofamerica.com/credit-cards/products/alaska-airlines-credit-card/
|
|
68
77
|
quote: 'spend $2,500 or more on purchases within the first 90 days of opening your account'
|
|
78
|
+
- rule: alaska-and-hawaiian-with-boa-account
|
|
79
|
+
url: https://www.bankofamerica.com/credit-cards/terms-and-conditions/?campaignid=4081060&productoffercode=RS&locale=en_US
|
|
80
|
+
quote: 'An active Qualifying Account is an open consumer (non-business) checking or savings account with Bank of America N.A.'
|
|
69
81
|
todo:
|
|
70
|
-
- 'The 10% rewards bonus rules use a proposed membership id, bank-of-america-account. Bank of America does not say on this page which accounts are "eligible".'
|
|
71
82
|
- 20% back on Alaska and Hawaiian inflight purchases is a rebate, not points, and isn't modeled.
|
|
83
|
+
- "BofA's rewards page lists Atmos Rewards cards as not eligible for the BofA Rewards tier bonus (in a popup the source check can't read), so the 10% account bonus stands alone."
|