← What's possible

A card at its annual fee

Decide a card at its annual fee, and record what you decided

An annual fee is the one moment a card asks a question. Miles answers the arithmetic half: what the card gives you at your own valuations, what another card in your wallet already covers, what each downgrade path costs, and whether a product change would forfeit a welcome offer. The other half is the call to the issuer and the offer they make. Hand both to your AI and it lays them side by side, then records the decision you made so Miles stops asking.

Fifteen minutes, plus the call.

An AI app with Miles connected, laying out a keep or cancel analysis next to the retention offer the issuer made on the phone
Your AI app · Miles connected· Example
Annual fee · $395 posted Sep 2
Value at your valuations$310
Already covered by another card−$80
Net of the fee−$165
Retention offer20,000 points · $2k spend
Downgrade pathno-fee version · welcome offer already used
Message your AI…

Miles computes the top four rows. The offer came from the phone. The decision is still yours, and it is the one thing Miles will not write on its own.

What you end up with

  • The card's value net of its fee, at your valuations, with duplicate benefits discounted.
  • Every downgrade path, with what each one gives up and whether it forfeits a welcome offer.
  • The issuer's retention offer recorded as history, whether you took it or not.
  • Your decision recorded on the card: keep, downgrade, cancel, or come back on a date, so the fee stops surfacing as something that needs attention.

Before you start

  1. The card in your Miles wallet with a fee date. Miles projects the fee from the date you gave it: the day you have seen it post, the anniversary, or the open date, in that order. Any of the three works; the first is exact.
  2. Miles connected to your AI app, with changes allowed. Follow the steps on Connect. On the approval screen, turn on Also allow changes to your wallet. The analysis is free and read-only; recording the offer and your decision needs the toggle. Tracking which credits you used is part of Miles Membership; the analysis without it still runs.
  3. A month. Most issuers refund the fee if you cancel or downgrade within a window after it posts. The length is the issuer's, and Miles does not know it. Ask on the call.

What leaves your device at each step, and what never does: Your data and your AI.

Step 1: Ask for the analysis

When the fee posts, or when Miles tells you it is about to, paste this into the AI app where Miles is connected:

My [card]'s annual fee just posted. Before I call the issuer: 1. Show me what needs attention on this card: the fee, any credit unused this period, and any certificate or bonus deadline tied to it. 2. Run the keep, downgrade or cancel analysis at my valuations. Show the math: each benefit's value, what another card I hold already covers, and the net of the fee. 3. List every downgrade path with what it loses, and for each one check my eligibility: would product-changing into it forfeit a welcome offer I could still earn by applying? 4. Tell me what I should ask the issuer about on the call. Do not record a decision. I have not made one.

Miles does not see your statement. If the fee posted on a day other than the one Miles projected, say so, and the AI will set the exact day so next year's reminder lands on it.

Step 2: Read the analysis

Value at your valuations. Each credit, certificate, status benefit and earning bonus priced at the point values you keep in Miles, not the issuer's. A credit you never use is worth what you use, and the AI should value it that way if you say so.

Already covered. Two cards with lounge access, or two with the same travel credit, do not give you the benefit twice. Miles discounts the second copy. This is the line that most often turns a keep into a downgrade.

Downgrade paths, and what each forfeits. The issuer rules Miles applies differ here, and the difference is the whole decision for some cards. Amex's welcome offers are once per lifetime, and product-changing into a card counts as having had it, so a downgrade into an Amex card you have never held destroys an offer you could still earn by applying. Bank of America's version is a 24-month wait rather than a lifetime bar. Chase blocks a card's welcome offer only while you hold it, since its 24-month lookback counts bonuses paid and a product change pays none. Capital One's changes pay no bonus and reset no clock. The AI should report this from your wallet history, card by card, rather than in general.

What to ask on the call. The fee refund window, and whether the issuer will offer anything to keep you. Retention offers are the issuer's to make and are not guaranteed; Miles has no record of what an issuer offers, only of what they offered you before, which is the next step.

Step 3: Make the call, then record it

Tell the AI what happened in your own words. Three shapes it should handle:

I called. They offered 20,000 points after $2,000 of spend in 3 months, and I took it. Keeping the card. Record the offer as taken, record my decision as keep, and set a review date a month before next year's fee.

Or:

I called. No offer. I downgraded to the no-fee version, effective today; the fee will be refunded on the next statement. Note that there was no retention offer, record the product change with today's date, and keep the original open date.

Or:

I called and cancelled it today. Record the card as closed as of today and keep it in my wallet history so it still counts toward 5/24.

Check what the AI writes back for these:

  • The decision is yours, not Miles'. Miles stores your decision separately from its own verdict, and shows both when they disagree. Your AI must never write Miles' recommendation into the decision field on your behalf. If it reports that the two disagree, that is information, not an error to fix.
  • Retention offers are a history, not a note. Each offer is recorded with its date, its terms and whether you took it. Next year the AI can tell you what they offered last time before you call.
  • A closed card stays in the wallet. It keeps its open and close dates so the recent-card rules still count it. Removing it would understate your 5/24.
  • A product change keeps the open date. Same account, new product. The change goes into the card's history with the date you gave.

Without an AI app

  • The analysis: ask Miles Chat "should I keep the [card]?" It runs the same math and shows the same downgrade paths.
  • Fee dates, review dates and decisions: open the card on the wallet page. Closing a card and recording a decision are there too.
  • What is coming up: each card on the wallet page shows when its annual fee is expected to post, marked as an estimate until you enter the day you saw it post.

When to do this again

Every fee, every year. The answer changes as your wallet does: a new card with overlapping benefits, a valuation you revised, a credit you stopped using. The recording step is what makes next year's decision faster than this one.

Hand this guide to your AI

This page is also served as plain markdown. Paste the address into your AI and ask it to follow the guide:

https://askmiles.ai/workflows/card-at-its-annual-fee.md

Related

  • Keep or cancel
  • Issuer rules
  • Your valuations
  • Connect your AI

Written 2026-09-04 and checked the same day against the keep or cancel analysis, the issuer rules Miles applies, and the tools your AI calls.