Upgrading your iPhone shouldn't take a spreadsheet.
Bill credits, trade-in tiers, activation fees, intro-year prices — every carrier prices the same phone a different way. This adds it all up over 36 months, so the cheapest way to your next iPhone is just the top row.
// Side by sidecost breakdown
Every combination
// Table view
| # | Carrier | Plan | Route | Plan | Phone | Fees | Trade-in | Total | Per mo. |
|---|
Compare routes
Compare plans
// Pick up to five
One formula, every route
A promotion that gives you a phone "on us" usually takes a phone you own and asks for a plan you might not otherwise buy. So every route is priced as everything you pay over the term. A phone handed to a carrier for bill credits counts as extra out-of-pocket at what its maker's own trade-in would have paid for it — Apple for an iPhone, Samsung for a Galaxy, Google for a Pixel; buying from Apple simply takes that value off the price.
total = monthly plan × 36
+ phone price − promo credits (buying from Apple: − trade-in value instead)
+ one-time fees (activation · device connection)
+ trade-in into the deal (maker's trade-in estimate of the phone the carrier takes)
// The fine print
Where the numbers come from
Prices and promotion terms were read from the carriers' own pages on the crawl date and saved to data/pricing.json. Carrier offers change weekly; check the source before you buy.
// Pages read
Every number on this page is one file. If a price has moved, a promotion is missing, your carrier is not here, or a checkout showed you a trade-in credit the carrier does not publish, open a pull request or an issue — the data is plain JSON and each entry names its source. Fixes reach everyone who uses the tool.