Flight Price Tracking App

The Problem Every Frequent Traveler Knows

Here's a question that sounds simple until you try to solve it: When should you buy a flight ticket?

If you travel regularly between the same destinations—maybe visiting family, commuting for work, or maintaining long-distance relationships—you've faced this dilemma countless times. Buy too early, and you might miss a price drop. Buy too late, and prices skyrocket. Set up alerts on Google Flights, and you'll get notified about changes but no context about whether those changes represent opportunities.

The tools exist, but the intelligence doesn't. You can track prices, but you can't understand them.

That's the problem Regular Flyer Buddy (RFB) was built to solve.

The Intelligence Gap in Travel Planning

Most flight booking tools optimize for one-time purchases. They show you current prices and maybe some recent price trends. But if you're a regular traveler on specific routes, you need different intelligence:

  • Is today's price historically high or low for this route?
  • How do prices typically vary by day of the week or advance purchase timing?
  • What's the price range I should expect for this time of year?
  • Should I book now or wait for a better deal?

These aren't pricing questions—they're strategy questions. And strategy requires data over time, not data at a point in time.

Building Intelligence From Data

RFB starts with a simple premise: If you collect enough flight pricing data over time, patterns emerge that enable better decisions.

The technical challenge was data acquisition. Most official airline APIs are restricted to travel industry partners. Consumer-facing tools like Google Flights don't offer APIs for systematic data collection.

The solution: Leverage an open-source flight data scraping tool called fast_flights. Not elegant, but effective. Sometimes the best solution is the one that works, not the one that's architecturally pure.

The Architecture of Intelligence

RFB's design reflects how frequent travelers actually think about flight booking:

Single Flight Search: Sometimes you need immediate information. Search specific routes, dates, and constraints. Get current prices and options.

Batch Processing: More often, you want systematic monitoring. Define your regular routes, preferred travel days, and date ranges. Let the system automatically collect pricing data over time.

Historical Analysis: The real value emerges from accumulated data. Track price trends, identify seasonal patterns, understand how advance purchase timing affects costs.

Interactive Dashboard: All this intelligence needs to be accessible. A Streamlit-based web interface provides visualization and control without requiring technical expertise.

The Evolution of Technical Architecture

RFB's development followed a progression that mirrors most successful applications: Start simple, add complexity only when needed, optimize for deployment reality.

Phase 1: Local Development Python backend, PostgreSQL database, command-line interface. Focus on core functionality: data collection, storage, analysis. Prove the concept works before worrying about scalability.

Phase 2: Containerization Docker containers for consistency and portability. Docker Compose for local orchestration. Separate application and database services. Environment variables for configuration. This phase is about making the system reproducible.

Phase 3: Cloud Deployment AWS infrastructure for production deployment. But not just any AWS—a carefully chosen set of services that balance cost, complexity, and functionality:

  • Amazon ECR: Container image storage
  • Amazon RDS: Managed PostgreSQL database
  • Amazon ECS with Fargate: Serverless container orchestration
  • Application Load Balancer: Traffic distribution and stable endpoints
  • AWS EventBridge Scheduler: Automated batch processing
  • AWS Secrets Manager: Secure credential storage

The Real Challenge: Making It Work

The technical architecture is straightforward. The operational challenges are where most projects fail.

Database Initialization: RDS doesn't support the simple init scripts that work with Docker Compose. Solution: CLI commands that run as one-off ECS tasks.

Cross-Platform Builds: Developing on macOS but deploying to Linux requires careful Docker build configuration. Small detail, big impact if you get it wrong.

Network Security: ECS tasks need to communicate with RDS, but RDS can't be publicly accessible. VPC configuration and Security Groups become critical.

Automated Scheduling: EventBridge needs to trigger ECS tasks with specific parameters. Command overrides and IAM permissions matter.

Monitoring and Debugging: CloudWatch Logs for visibility into what's actually happening in production.

The Intelligence Payoff

Once deployed, RFB delivers intelligence that changes how you approach flight booking:

Price Context: Instead of seeing "$450 for this flight," you see "$450 for this flight, which is 15% below the 6-month average for this route on Tuesdays."

Timing Intelligence: Understand how prices typically change as you get closer to departure. Some routes get more expensive, others get cheaper.

Day-of-Week Patterns: Many routes show consistent price variations by day of the week. Wednesday flights might be consistently cheaper than Friday flights on your regular route.

Seasonal Trends: Holiday pricing patterns, summer vs. winter variations, business travel vs. leisure travel periods.

The Development Philosophy

RFB demonstrates several principles that apply beyond travel applications:

Start with the Problem, Not the Technology: The core insight wasn't about web scraping or database design. It was about intelligence gaps in frequent traveler decision-making.

Leverage Existing Tools: Don't build what you can buy, borrow, or adapt. fast_flights handled the complex scraping logic. Streamlit provided the dashboard framework. AWS managed the infrastructure.

Design for Real Usage: Frequent travelers don't want to manage servers or write SQL queries. They want answers to booking questions. The interface reflects this reality.

Plan for Unreliability: Web scraping breaks when websites change. The system needs to handle failures gracefully and provide alternatives when primary data sources fail.

The Limitations That Matter

RFB's reliance on web scraping creates inherent instability. Website changes can break data collection. Rate limiting can throttle data acquisition. Legal restrictions could limit scraping activities.

These aren't flaws—they're trade-offs. Perfect data availability would require airline partnerships or expensive commercial APIs. For a personal project serving a specific use case, scraping provides adequate functionality at manageable cost.

The lesson: Match your technical approach to your actual requirements, not your ideal requirements.

The Future of Personal Intelligence

RFB points toward a broader opportunity: Personal intelligence systems that collect data about your specific patterns and preferences to enable better decisions.

Frequent travelers could use similar intelligence for hotels, rental cars, and complete trip planning. Regular commuters could apply the same concepts to gas prices, public transit schedules, or traffic patterns.

The technology exists. The data is available. What's needed is the initiative to build systems that serve your specific decision-making patterns rather than generic market needs.

The Real Success Metric

RFB's success isn't measured in user adoption or revenue generation. It's measured in decision confidence.

Before RFB: "I hope this is a good price, but I have no way to know."

After RFB: "Based on six months of data, this price is within 10% of the historical average, and prices typically increase as we get closer to departure, so I should book now."

That's the difference between guessing and knowing. Between anxiety and confidence. Between reactive and strategic decision-making.

The Compound Effect of Better Decisions

Travel costs compound over time. If you travel regularly and make better booking decisions, the savings accumulate. More importantly, the stress reduction accumulates.

But the real value isn't financial—it's cognitive. When you have intelligence about recurring decisions, you spend less mental energy on analysis and more on execution.

RFB transforms flight booking from a research project into a routine decision. That cognitive load reduction is worth more than the dollar savings.

And that's the ultimate lesson: The best technology doesn't just solve problems—it eliminates decisions you shouldn't have to make repeatedly.