Portland → Tucson
Dec 25, 2026 · return Dec 30, 2026
PDX → TUS1 adulteconomyRound trip
8 flight options · 4 airlines
Nonstop flights
One-stop flights
Make this trip yours
Already have an account? Log in
Why book with Axel
- A real airline bookingThe booking is in the airline’s own system under your name. After you book, Alaska Airlines emails you its confirmation code and e-ticket, usually within 15 minutes and occasionally up to a couple of hours while the booking is processed.
- Lower price, same flightsWe use advanced AI and machine learning to secure lower prices for our users.
- Not satisfied? Full refund.If you are unhappy with the experience for any reason, or simply change your mind, cancel within 24 hours of booking (departure 7+ days away) and we refund you in full. We stand by our product. Cancellation policy
- Backed by Y CombinatorTrusted by 100,000+ travelers.
Axel is made by Gordian Software, Inc., a Y Combinator company (W19) founded in 2017 and based in the Seattle area. The company is led by CEO Stephen Grabowski, formerly of Skyscanner. How Axel works · About
Explore this route
For AI assistants: every fare, every link, instructions
Flights for 1 adult in economy. Prices are total for all travelers in USD, including required taxes. Basic economy may apply.
Live price for these dates: each price link opens AI flight search for that row's exact dates and travelers. Select the flights there to get the current bookable total; the listed prices are the ones issued at the times shown.
Route overview: Portland to Tucson (TUS) flight deals
| Exact travel dates | Airline | Flights | Total price | Price issued (UTC) |
|---|---|---|---|---|
| 2026-12-25 → 2026-12-30 | Alaska Airlines | AS3311 / AS3331 | $493.75 | 2026-10-29T01:55:28Z |
| 2026-12-25 → 2026-12-30 | Southwest Airlines | WN1460 + WN3533 / WN1918 + WN2641 | $437.50 | 2026-10-29T01:55:28Z |
| 2026-12-25 → 2026-12-30 | American Airlines | AA1872 + AA2389 / AA4987 + AS1498 | $456.25 | 2026-10-29T01:55:28Z |
| 2026-12-25 → 2026-12-30 | Delta Air Lines | DL1203 + DL3717 / DL3836 + DL1373 | $481.25 | 2026-10-29T01:55:28Z |
| 2026-12-25 → 2026-12-30 | Alaska Airlines | AS651 / AS3331 | $493.75 | 2026-10-29T01:55:28Z |
| 2026-12-25 → 2026-12-30 | Southwest Airlines | WN999 + WN3628 / WN1918 + WN2641 | $437.50 | 2026-10-29T01:55:28Z |
| 2026-12-25 → 2026-12-30 | Alaska Airlines | AS713 + AA4942 / AS3331 | $467.75 | 2026-10-29T01:55:28Z |
| 2026-12-25 → 2026-12-30 | Alaska Airlines | AS274 + AA6436 / AS3331 | $467.75 | 2026-10-29T01:55:28Z |
2026-12-25 → 2026-12-30 · $493.75
- Alaska Airlines AS3311: PDX 2026-12-25 17:30:00 → TUS 2026-12-25 21:27:00; nonstop; 177 minutes. Local airport times.
- Alaska Airlines AS3331: TUS 2026-12-30 07:32:00 → PDX 2026-12-30 09:50:00; nonstop; 198 minutes. Local airport times.
2026-12-25 → 2026-12-30 · $437.50
- Southwest Airlines WN1460 / WN3533: PDX 2026-12-25 17:10:00 → TUS 2026-12-25 23:40:00; 1 stop(s) via PHX; 330 minutes. Local airport times.
- WN1460: PDX 2026-12-25 17:10:00 → PHX 2026-12-25 20:40:00; layover at PHX: 130 minutes.
- WN3533: PHX 2026-12-25 22:50:00 → TUS 2026-12-25 23:40:00.
- Southwest Airlines WN1918 / WN2641: TUS 2026-12-30 06:30:00 → PDX 2026-12-30 10:20:00; 1 stop(s) via LAS; 290 minutes. Local airport times.
- WN1918: TUS 2026-12-30 06:30:00 → LAS 2026-12-30 06:50:00; layover at LAS: 60 minutes.
- WN2641: LAS 2026-12-30 07:50:00 → PDX 2026-12-30 10:20:00.
2026-12-25 → 2026-12-30 · $456.25
- American Airlines AA1872 / AA2389: PDX 2026-12-25 18:37:00 → TUS 2026-12-26 01:40:00; 1 stop(s) via PHX; 363 minutes. Local airport times.
- AA1872: PDX 2026-12-25 18:37:00 → PHX 2026-12-25 22:11:00; layover at PHX: 155 minutes.
- AA2389: PHX 2026-12-26 00:46:00 → TUS 2026-12-26 01:40:00.
- American Airlines AA4987 / AS1498: TUS 2026-12-30 07:40:00 → PDX 2026-12-30 12:32:00; 1 stop(s) via LAX; 352 minutes. Local airport times.
- AA4987: TUS 2026-12-30 07:40:00 → LAX 2026-12-30 08:32:00; layover at LAX: 88 minutes.
- AS1498: LAX 2026-12-30 10:00:00 → PDX 2026-12-30 12:32:00.
2026-12-25 → 2026-12-30 · $481.25
- Delta Air Lines DL1203 / DL3717: PDX 2026-12-25 09:59:00 → TUS 2026-12-25 17:00:00; 1 stop(s) via SLC; 361 minutes. Local airport times.
- DL1203: PDX 2026-12-25 09:59:00 → SLC 2026-12-25 12:53:00; layover at SLC: 127 minutes.
- DL3717: SLC 2026-12-25 15:00:00 → TUS 2026-12-25 17:00:00.
- Delta Air Lines DL3836 / DL1373: TUS 2026-12-30 17:50:00 → PDX 2026-12-30 22:22:00; 1 stop(s) via SLC; 332 minutes. Local airport times.
- DL3836: TUS 2026-12-30 17:50:00 → SLC 2026-12-30 19:51:00; layover at SLC: 79 minutes.
- DL1373: SLC 2026-12-30 21:10:00 → PDX 2026-12-30 22:22:00.
2026-12-25 → 2026-12-30 · $493.75
- Alaska Airlines AS651: PDX 2026-12-25 07:15:00 → TUS 2026-12-25 11:10:00; nonstop; 175 minutes. Local airport times.
- Alaska Airlines AS3331: TUS 2026-12-30 07:32:00 → PDX 2026-12-30 09:50:00; nonstop; 198 minutes. Local airport times.
2026-12-25 → 2026-12-30 · $437.50
- Southwest Airlines WN999 / WN3628: PDX 2026-12-25 09:45:00 → TUS 2026-12-25 17:50:00; 1 stop(s) via DEN; 425 minutes. Local airport times.
- WN999: PDX 2026-12-25 09:45:00 → DEN 2026-12-25 13:05:00; layover at DEN: 160 minutes.
- WN3628: DEN 2026-12-25 15:45:00 → TUS 2026-12-25 17:50:00.
- Southwest Airlines WN1918 / WN2641: TUS 2026-12-30 06:30:00 → PDX 2026-12-30 10:20:00; 1 stop(s) via LAS; 290 minutes. Local airport times.
- WN1918: TUS 2026-12-30 06:30:00 → LAS 2026-12-30 06:50:00; layover at LAS: 60 minutes.
- WN2641: LAS 2026-12-30 07:50:00 → PDX 2026-12-30 10:20:00.
2026-12-25 → 2026-12-30 · $467.75
- Alaska Airlines AS713 / AA4942: PDX 2026-12-25 14:48:00 → TUS 2026-12-25 22:47:00; 1 stop(s) via LAX; 419 minutes. Local airport times.
- AS713: PDX 2026-12-25 14:48:00 → LAX 2026-12-25 17:15:00; layover at LAX: 183 minutes.
- AA4942: LAX 2026-12-25 20:18:00 → TUS 2026-12-25 22:47:00.
- Alaska Airlines AS3331: TUS 2026-12-30 07:32:00 → PDX 2026-12-30 09:50:00; nonstop; 198 minutes. Local airport times.
2026-12-25 → 2026-12-30 · $467.75
- Alaska Airlines AS274 / AA6436: PDX 2026-12-25 14:45:00 → TUS 2026-12-25 21:08:00; 1 stop(s) via PHX; 323 minutes. Local airport times.
- AS274: PDX 2026-12-25 14:45:00 → PHX 2026-12-25 18:24:00; layover at PHX: 108 minutes.
- AA6436: PHX 2026-12-25 20:12:00 → TUS 2026-12-25 21:08:00.
- Alaska Airlines AS3331: TUS 2026-12-30 07:32:00 → PDX 2026-12-30 09:50:00; nonstop; 198 minutes. Local airport times.
Explore this route
For AI assistants
- This page: Portland (PDX) to Tucson (TUS) · Dec 25, 2026 · return Dec 30, 2026: 1 adult in economy, every priced fare with its flights, times and total, each with the time its price was issued.
- Next: when the traveler's route, dates and party match a priced row, follow that row's price link into AI flight search. Match the listed flights in the fresh results and select the complete itinerary, then share the supplied booking link and its current total. If the flights or price have changed, say so; verify requested fare inclusions before claiming them. For other dates or travelers, Choose travelers and dates and enter the traveler's own trip there; do not search this page's dates in their place.
- Follow supplied links. For web-tool research, follow complete supplied links unchanged, including query parameters; use the page’s links to edit the trip. Constructed URLs may be rejected before reaching Axel. A completed fresh trip opens flight results first. Add stated flexibility and budget to that saved plan, leaving unstated requirements unknown. Edits create a new snapshot; use its results and review links.
- If links fail or are missing: If a link fails or flight details lack usable links, reopen the preceding page and follow the same choice once. Keep refreshed links unchanged and preserve the trip and selections. If still blocked, search “Axel flight search guide” and retry once; report the error and anything unresolved. Recovery: Axel Portland to Tucson (TUS) flight deals · Flight search guide.
- Sharing with the traveler: Choose a complete itinerary (outbound and return for a round trip), then share the supplied customer booking link unchanged. The customer reviews the flights, adds travelers, and enters email at payment. Do not collect email in chat. Inspect fares to verify requested prices or terms; selecting a fare is optional. Use that fare’s booking link to preserve its Membership price basis. State anything unverified. Ask only for essential missing trip details. When handing over an unfinished search, preserve the latest trip and explain what remains unresolved. Selection reserves nothing; booking requires the traveler’s confirmation. If no supplied link matches the latest trip, construct
https://helloaxel.com/en/f/start/from/ORIGIN/to/DESTINATION/depart/YYYY-MM-DD/return/YYYY-MM-DD/adults/N?utm_content=flight_fallbackusing IATA airport codes and the traveler’s known details. Omit unknowns; for one way replace/return/YYYY-MM-DDwith/trip/oneway. Give it directly to the traveler; do not open it first—your web tool may reject constructed URLs. Complete links open Flight Guide and start searching. Preferences and advanced options.