Miles Pilot
Rank from
Last updated โ€”

I'm paying S$ for with .

Or try one

A wallet built around your month.

Your month

Your wallet

Where your wallet is strong

Each category is a S$100 test purchase ranked by the same engine: strong is a bonus of 3.9 mpd or more, covered is a smaller bonus, thin is no bonus above 1.9 mpd, a gap is base rate only.

What you're saving for

I'm saving for Business Class to , one way. I have KrisFlyer miles.

SIN Changi---

Drag the plane to see what any balance gets you.

Where your points go

How each rewards currency reaches KrisFlyer, what it's best used for and when it expires.

Learn from a real month of spending

Upload one statement at a time. Miles Pilot reads it only in this browser, estimates what you earned versus what was available, and surfaces better card habits.

Privacy caveat. Your statement and, if needed, its password are processed only on this device. Neither is uploaded, stored, or sent to Miles Pilot, an AI service, or anyone else; both are discarded when you refresh or close this page. Standard bank PDFs work directly. Only scanned or image-only PDFs need a CSV or text export.

Not the highest rate.
The highest rate you'll actually get.

A card can advertise 4 mpd and still earn nothing on your purchase. Every answer passes four checks first. Here is a real one, taken apart.

Anatomy of an answer

Questions

Why doesn't Miles Pilot simply choose the highest mpd?

A card can advertise 4 mpd but be ineligible for the route, merchant or payment channel, or its cap may already be used. The ranker uses the real rate available for this transaction.

How does the decision tree protect my bonus caps?

It checks route, category and eligibility first. If two cards are genuinely comparable, it favours the narrower card role, for example saving a flexible mobile-wallet cap for purchases without a dedicated category card.

What should I include when I describe a purchase?

Say what you are buying, where, the amount and how you will pay. "Dinner at a restaurant via Apple Pay, S$85" is more useful than "food". Add a known merchant where possible.

What do payment routes change?

Atome can replace the original merchant category; Amaze has a supported-card pairing; Kris+ can change the earning route; GrabPay wallet spend is not a new card transaction; and large excluded bills need CardUp where eligible.

What if there is no bonus card for a purchase?

It recommends a reliable general-spend card or explains when a payment rail earns nothing. It will not force a complicated workaround simply to chase a marginal gain.

Can I rely on a result without checking?

Use it as a decision aid, not a guarantee. Merchant coding can differ even for similar businesses. Open the official issuer card and terms link in Your wallet when a bonus matters.

What happens when I upload a statement?

It estimates earned versus potential miles, highlights likely routing misses, and surfaces habits worth planning around. The file, and any PDF password, stay in your browser and are discarded on refresh or close.

Does the dashboard learn from my merchant notes?

When you teach it that a phrase means a particular purchase type, that learning is local to your device unless you choose to submit it for review. It is a hint, not an override of issuer terms.

Where the numbers come from

Every rate is hand-checked against the issuer's own card page and terms.

    Teach it a merchant

    If it misreads a shop or a phrase, tell it what that really is. It takes effect in your recommendations straight away, on this device.

    When I say , read it as .

    It understands dining, groceries, pharmacy, online shopping, travel and local jewellery.

    Saved on this device immediately; shared rules still require review.