WheretocreditCAUTION
AI-powered travel hacking and search with cash, points, miles, and award flights. Drop-in skills and MCP servers for Claude, Codex, and OpenCode.
Overview
AI-powered travel hacking and search with cash, points, miles, and award flights. Drop-in skills and MCP servers for Claude, Codex, and OpenCode.
fda58ab480fdOBSERVED · 2026-10-14What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
---
name: wheretocredit
description: Mileage earning rates by airline and booking class via wheretocredit.com. Redeemable and qualifying miles across 50+ programs. Use when deciding where to credit a flight or comparing earning rates.
category: loyalty
summary: Mileage earning rates by airline and booking class across 50+ programs.
api_key: None (free)
license: MIT
---
# Where to Credit
Look up mileage earning rates for any airline and booking class across 50+ frequent flyer programs. Covers both **redeemable miles** (the ones you spend) and **qualifying miles** (the ones that count toward elite status).
**Source:** [wheretocredit.com](https://www.wheretocredit.com) — No API key required. Data is scraped via webfetch.
## URL Patterns
All data lives at predictable URLs on wheretocredit.com:
### Airline booking class detail (PRIMARY)
```
https://www.wheretocredit.com/en/{IATA_CODE}/{BOOKING_CLASS}
```
Returns: cabin type, fare types, redeemable miles table, qualifying miles table.
Example: `https://www.wheretocredit.com/en/AY/Z` (Finnair class Z)
### Airline overview (all classes)
```
https://www.wheretocredit.com/en/{IATA_CODE}
```
Returns: list of all booking classes with cabin, fare types, and top earning program for each.
Example: `https://www.wheretocredit.com/en/AY` (all Finnair classes)
### Program overview (all partner airlines)
```
https://www.wheretocredit.com/en/programs/{PROGRAM_CODE}
```
Returns: list of all airlines that credit to this program.
Example: `https://www.wheretocredit.com/en/programs/AA` (AA AAdvantage partners)
## Common IATA Codes
| Code | Airline |
|------|---------|
| AA | American Airlines |
| AS | Alaska Airlines |
| AF | Air France |
| AY | Finnair |
| BA | British Airways |
| CX | Cathay Pacific |
| DL | Delta |
| EK | Emirates |
| IB | Iberia |
| JL | Japan Airlines |
| KL | KLM |
| LH | Lufthansa |
| NH | ANA |
| QF | Qantas |
| QR | Qatar Airways |
| SK | SAS |
| SQ | Singapore Airlines |
| TK | Turkish Airlines |
| UA | United Airlines |
| VS | Virgin Atlantic |
## Common Program Codes
| Code | Program |
|------|---------|
| AA | American Airlines AAdvantage |
| AS2 | Alaska/Hawaiian Atmos Rewards |
| AFB | Flying Blue (Air France/KLM) |
| BA2 | British Airways Club |
| CX | Cathay Marco Polo / Asia Miles |
| DL2 | Delta SkyMiles |
| IB2 | Iberia Plus |
| JL | Japan Airlines Mileage Bank |
| LH | Miles & More |
| QR | Qatar Privilege Club |
| SK | SAS EuroBonus |
| SQ | Singapore KrisFlyer |
| UA | United MileagePlus |
| VS | Virgin Atlantic Flying Club |
## Reading the Results
### Redeemable Miles Table
Shows the percentage of flown distance you earn as spendable miles.
| Column | Meaning |
|--------|---------|
| Base | Earning rate with no elite status |
| Tier 1 | First elite tier bonus |
| Tier 2 | Second elite tier bonus |
| Tier 3 | Third elite tier bonus |
| Tier 4 | Highest elite tier bonus |
| Minimum | Floor (e.g., "500 Miles" means you earn at least 500 regardless of distance) |
| Restriction | Limitations (e.g., "Countries Excluded: CU" = no earning on Cuba routes) |
### Qualifying Miles Table
Shows the percentage of flown distance that counts toward elite status.
Same column structure. Often different rates from redeemable. Some programs earn 0% qualifying on discounted fares even when they earn redeemable miles.
**Key distinction:** A flight can earn redeemable miles but zero qualifying miles. Always check BOTH tables.
### Tier Levels by Program
Programs use different names for their tiers. Map your status to the right tier column:
| Program | Base | Tier 1 | Tier 2 | Tier 3 | Tier 4 |
|---------|------|--------|--------|--------|--------|
| AA AAdvantage | Base | Gold | Platinum | Platinum Pro | Executive Platinum |
| Alaska Atmos | Base | MVP | MVP Gold | MVP Gold 75K | MVP Gold 100K |
| Delta SkyMiles | Base | Silver | Gold | Platinum | Diamond |
| United MileagePlus | Base | Silver | Gold | Platinum | 1K |
| Flying Blue | Base | Silver | Gold | Platinum | Ultimate |
| BA Executive Club | Base | Bronze | Silver | Gold | Gold Guest List |
## Traveler Profiles
Before using the decision algorithm, define each traveler's profile. You need:
- Which FF programs they have accounts in
- Their elite status tier in each program
- Which program is their "primary" (the one they're actively building status in)
Example profile:
```
Traveler: Alex
Programs: AA AAdvantage (Platinum, Tier 2), Alaska Atmos (Base), Flying Blue (Silver, Tier 1)
Primary: AA AAdvantage (retaining Platinum status)
```
**Only recommend programs someone has an account in.** Don't suggest crediting to Etihad Guest if nobody has one, unless the earning is dramatically better AND the program is useful for future redemptions.
## Decision Algorithm
When a flight is booked, run this logic to determine where to credit:
### Step 1: Gather inputs
- Operating airline IATA code (from ticket, NOT ticketing airline)
- Booking class letter (from ticket or fare details)
- Route distance in miles (estimate or look up)
- Which traveler(s) are on the ticket
### Step 2: Fetch earning rates
- Fetch `https://www.wheretocredit.com/en/{IATA}/{CLASS}`
- Extract redeemable AND qualifying rates for all of that traveler's programs
### Step 3: Calculate actual miles earned
For each reachable program, for each traveler:
```
raw_miles = route_distance × (base_rate + tier_bonus) / 100
actual_miles = max(raw_miles, minimum_floor)
```
If a program uses fare-price earning (e.g., "6 Miles/EUR"), calculate based on ticket price instead of distance.
### Step 4: Apply decision rules
**Rule 1: Short-haul floor advantage.** On flights under ~1,500 miles, programs with a 500+ mile minimum floor (like Alaska) can earn MORE than programs offering a percentage of distance. Calculate both and compare. At Base tier, Alaska's 500 floor beats 25% earning on any flight under 2,000 miles. At higher tiers with bonus percentages, the crossover point drops.
**Rule 2: Qualifying miles matter fTrust audit
CAUTIONgrade B · trust 89/100 Install with care. The audit found things worth knowing before you trust its output.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | WARN |
| L1 | Static analysis of the code | NA |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (5)
.agents/skills
.claude/skills
.opencode/skills
skills
AGENTS.md
Gates applied: no_behavioural_pass.
fda58ab480fdfull audit observations/trust-audit/skill/borski__wheretocredit.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-14 | fda58ab480fd | CAUTION | B | 89 | first audit |
Questions
What does the Wheretocredit skill do?
AI-powered travel hacking and search with cash, points, miles, and award flights. Drop-in skills and MCP servers for Claude, Codex, and OpenCode.
Is Wheretocredit safe to install?
With care. The audit graded it B (89/100) and found 5 things worth knowing before you trust this skill, listed below with the exact line each was found on.
What can Wheretocredit access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
How current is this page?
The grade is for one exact copy of the source (fda58ab480fd), read on 2026-10-14. The repository is watched, and a new audit runs when it changes — this is the first audit.