Fine Print

Your Rewards Rate Is a Suggestion

Advertiser disclosure. CardRank is an independent comparison service. We may receive compensation when you apply for cards through our links. This does not influence our rankings or recommendations. How we rank →

Your credit card says "3% on dining." You eat at a restaurant. You earn 1%. This isn't a bug — it's merchant category codes, and they control your rewards rate more than the card's marketing page does.

Every merchant that accepts credit cards is assigned a four-digit code by Visa, Mastercard, or the card network when they set up their payment processing. This code — the MCC — is what your card issuer uses to determine your reward rate. Not the name of the store. Not what you bought. Not what you think the category should be. The code.

Why it matters for your wallet

When your card advertises "6% at U.S. supermarkets," it really means "6% at merchants coded as MCC 5411 (Grocery Stores, Supermarkets)." If your grocery store is coded as something else — a warehouse club (5300), a discount store (5310), a supercenter (5311) — you earn the base rate, usually 1%. The food is the same. The rewards aren't.

Whole Foods Market
MCC 5411
Coded as a grocery store/supermarket. Earns the grocery bonus rate on cards like the Blue Cash Preferred (6%) and Amex Gold (4x).
✓ Earns grocery bonus
Walmart Supercenter
MCC 5311
Coded as a department store / supercenter, not a grocery store — even though you're buying groceries. Does not earn the grocery bonus on most cards, including the Blue Cash Preferred and Amex Gold.
✗ Earns base rate only
Costco
MCC 5300
Coded as a wholesale club. Not classified as a grocery store. Does not earn grocery bonuses. Costco also only accepts Visa (not Amex, not Mastercard, not Discover) — so your Amex grocery card can't even be used here.
✗ Earns base rate only (Visa only)
A bakery that sells sandwiches
MCC 5462 or 5812
Could be coded as a bakery (5462) or a restaurant (5812) depending on how the owner set up their payment terminal. If coded as a bakery, your "3% dining" card earns 1%. Same sandwich, different code, different rewards.
✗ May earn dining bonus or may not

The categories that cause the most confusion

Groceries

The most contested category. MCC 5411 is the magic number. Traditional grocery stores (Kroger, Publix, Safeway, Whole Foods, Trader Joe's, Aldi) typically code correctly. Target, Walmart, and Costco do not. Neither do convenience stores (MCC 5541) or farmers' markets. If your neighborhood grocer is a small independent shop, the coding depends on how their payment processor categorized them — and it might be wrong.

Dining

MCC 5812 (Eating Places, Restaurants) and 5814 (Fast Food Restaurants) are the standard dining codes. Most sit-down restaurants, takeout places, and delivery services (DoorDash, Uber Eats, Grubhub) code correctly. But coffee shops can go either way: Starbucks codes as dining (5812), while some independent cafes code as a bakery or miscellaneous retail. Bars may code as 5813 (Drinking Places) — some cards include this in dining, others don't.

Travel

This is where it gets genuinely complicated. Airlines booked direct (MCC 3000-3350) always code as travel. Hotels booked direct (MCC 3501-3999 or 7011) usually do. But online travel agencies (Expedia, Booking.com) may code as a travel agency (4722) or an online services company — and different card issuers treat these codes differently. The Chase Sapphire Preferred counts most OTA bookings as travel; some other cards don't. Ride-shares (Uber, Lyft) code as 4121 (Limousines and Taxicabs) and most travel cards include this, but parking garages (7523) and tolls (4784) are included by some issuers and excluded by others.

Streaming

There is no single "streaming" MCC. Netflix, Spotify, Disney+, and others are coded under various digital goods and subscription service codes. Card issuers maintain their own internal lists of which merchant IDs qualify as "select streaming" — and these lists aren't published. If a newer streaming service doesn't appear on the issuer's list, your "streaming bonus" won't apply even though you'd reasonably call it streaming.

How to check what you actually earned

Check your statement details. Most card issuers show the reward rate earned on each transaction in the rewards activity section of their app or website. If a purchase you expected to earn 3% only earned 1%, the MCC is the reason.

Look up the merchant's MCC. Sites like Visa's supplier locator can show the MCC assigned to a specific merchant. You can also call the merchant and ask what category code their payment terminal uses — most won't know off the top of their heads, but their payment processor can tell them.

Test with a small purchase. If you're unsure whether a merchant will code as the right category, make a small purchase and check the rewards earned before running your monthly grocery haul through the card.

What you can't do

You cannot change a merchant's MCC. You can ask the merchant to contact their payment processor and request a reclassification, but this rarely happens. The practical solution is to use the card that earns the best rate for how the merchant is actually coded, not how you think it should be coded.

Why CardRank's quiz accounts for this

When our quiz asks where you spend, we map your answers to realistic earning rates — not headline rates. A card that advertises "6% on groceries" gets scored at 6% for traditional supermarket spending, but we don't assume your Costco run or Target checkout earns that rate. The match score you see reflects what you'll actually earn, not what the marketing page promises.

Not sure which card is right for you?

Take our 60-second quiz. We'll rank every card against your actual spending.

Rank my cards →