Inspiration

We kept encountering the same headline statistic: aviation contributes roughly 4% of global warming, and that share is growing. But the figure that stayed with us came from Lee et al. (2021): contrails account for roughly 35% to 57% of aviation's total climate forcing. In other words, the dominant share of aviation's warming impact is often not CO₂, but contrails.

Recent industry trials suggest this is a tractable problem. Google and American Airlines demonstrated that AI-guided altitude adjustments could reduce contrail formation by 54% while incurring a fuel penalty of less than 2%. The science exists, and the operational cost is relatively small. Yet most airlines still do not run meaningful contrail avoidance programs.

The gap is therefore not primarily scientific, but informational. When passengers book flights, they can see ticket price, travel time, and sometimes a crude CO₂ estimate. They cannot see contrail impact, nor can they distinguish between airlines that actively invest in mitigation and those that merely market themselves as sustainable. SkyPrint is a consumer-facing platform designed to make that hidden climate signal visible.

What SkyPrint Does

SkyPrint is a climate intelligence platform for aviation built around four primary surfaces.

1. Airline Scorecards

SkyPrint grades airlines from A+ through F across five weighted categories:

  • Contrail Mitigation (30%)
  • Fleet Efficiency (25%)
  • SAF Adoption (20%)
  • Route Optimization (15%)
  • Emissions Trajectory (10%)

These weights reflect the current science: contrail mitigation is the most important differentiator because adopting avoidance routing can reduce warming impact more rapidly than slower structural changes such as fleet renewal. Airlines are also grouped into tiers, ranging from “Sky Saints” for top performers to “Contrail Criminals” for the worst.

Selecting an airline generates a full climate intelligence report. These reports include an executive summary, contrail analysis, fleet assessment, sustainable aviation fuel outlook, ranked recommendations, and a justification for the assigned grade, all grounded in cited literature and deterministic scoring outputs.

2. Flight Comparison

Given an origin and destination, SkyPrint retrieves real flight options and evaluates each one across both CO₂ and contrail-related climate impact. For each flight, we generate waypoint-based trajectories and run them through our contrail modeling pipeline to estimate contrail probability, energy forcing, and per-passenger emissions.

The result is a side-by-side comparison that makes hidden differences visible. Two flights with similar price and duration can differ dramatically in total warming impact. SkyPrint highlights these differences directly and pairs them with a natural-language explanation so that users understand not only which flight is better, but why.

3. Route Simulation

SkyPrint includes an interactive simulation environment for contrail-aware route optimization. Users can choose an origin, destination, and aircraft type, then vary cruise altitude over a realistic range. The system recomputes baseline and optimized predictions in real time, displaying changes in:

  • ΔCO₂
  • Contrail Risk Reduction
  • Total Climate Impact

A color-coded indicator shows whether the selected altitude lies in a high-risk contrail regime. This makes the tradeoff between fuel burn and non-CO₂ warming tangible rather than abstract.

4. Aero: Conversational Climate Guide

To make the science more accessible, SkyPrint includes Aero, a conversational AI assistant with voice support. Users can ask questions such as:

“Why is Lufthansa rated B+?”
“Compare flights from JFK to LHR.”
“What exactly are contrails?”

Aero retrieves live data from the scoring and comparison pipeline through tool calls and translates technical climate concepts into accessible explanations. It adapts to page context, supports voice interaction, and serves as an interface between complex atmospheric science and an ordinary traveler.

Beyond the Core Platform

Beyond these four surfaces, SkyPrint also includes a booking flow integrated with Photon, a lifecycle notification system. After a booking, users receive:

  • an immediate booking confirmation with climate impact metrics,
  • a greener alternative nudge shortly afterward if a lower-impact option exists,
  • a contrail forecast before departure,
  • a post-flight impact summary after landing, and
  • periodic aggregate climate statistics.

We also designed a scrollytelling flight story page with animated route playback, ISSR overlays, counterfactual altitude profiles, and airline leaderboard views, along with a daily climate intelligence feed.

How We Built It

Contrail Engine

The scientific core of SkyPrint is a Python and FastAPI microservice built around pycontrails, which provides an open-source implementation of the CoCiP contrail model. Atmospheric inputs are pulled from pressure-level forecast data, including humidity, temperature, and wind fields. Flight trajectories are derived from ADS-B and related flight data sources.

The engine exposes four main endpoints:

  • /predict for contrail formation estimates,
  • /optimize for altitude adjustments under a bounded fuel penalty,
  • /compare for trajectory-level comparisons, and
  • /route-history for historical flight analysis.

When full CoCiP inputs are unavailable, the system degrades gracefully to a Schmidt-Appleman Criterion based fallback. This preserves responsiveness while maintaining a scientifically interpretable output.

AI Stack

SkyPrint uses two AI models with clearly separated responsibilities.

  • K2 Think V2 is used for deeper reasoning tasks such as airline climate reports, environmental assessments, and comparison narratives.
  • Google Gemini 2.5 Flash powers Aero, the real-time conversational assistant, through structured tool calling and streaming responses.

Voice interaction is handled through ElevenLabs for both speech synthesis and transcription.

A central design principle is that AI never generates the quantitative outputs. All numerical values come from a deterministic pipeline. The models are responsible only for explanation, narration, and contextualization.

Frontend

The frontend was built in Next.js with TypeScript, Tailwind CSS, and shadcn/ui. Framer Motion powers the animations, while mapping and visualization libraries support route views, overlays, and climate storytelling. The simulation interface uses animated numerical transitions so that changes in altitude and climate impact feel immediate and intuitive.

Data Layer

SkyPrint uses Supabase and PostgreSQL for storage, with Drizzle ORM for type-safe queries. The schema covers user data, flight bookings, contrail and CO₂ metrics, Photon notification scheduling, delivery logs, and aggregate user statistics.

Scoring Pipeline

The airline grading system is fully deterministic. Contrail mitigation is scored most heavily, while fleet efficiency, SAF adoption, route optimization, and emissions trajectory are incorporated through weighted components. The final composite score is mapped to a plus/minus letter grade from A+ to F, along with a tier label.

This same pipeline feeds every user-facing surface: airline scorecards, flight comparisons, simulation outputs, and Aero's live responses.

Challenges We Ran Into

One of the hardest problems was score calibration. Our initial formula compressed nearly every airline into the C, D, or F range. The weighting and caps were too conservative, meaning even airlines with meaningful programs could not score highly. We ultimately redesigned the scale several times, especially around contrail mitigation and SAF adoption, until the scores better reflected real differences in effort and performance.

Integrating K2 also required substantial engineering work. It could return reasoning tags, malformed structured output, or timeout on longer prompts. To address this, we built a layered fallback system: structured output first, then extraction-based recovery, and finally a deterministic local report generator so that the interface never failed completely.

Robustness across external APIs was another major challenge. Flight data providers, weather inputs, contrail simulations, and language models can all fail independently. We designed the comparison system around graceful degradation so that numerical outputs remain deterministic and available even when certain external services are degraded.

Finally, maintaining a visually consistent glassmorphic interface across pages while keeping text readable on top of rich backgrounds required more iteration than expected. Small design choices such as opacity, blur, and border contrast ended up mattering significantly.

What We Are Proud Of

The accomplishment we are most proud of is the separation between data generation and AI explanation. If a language model fails, the climate metrics remain unchanged. If the narrative layer disappears, the platform still functions scientifically. That separation makes the system more trustworthy.

We are also proud of the Photon notification lifecycle. Rather than treating booking as the endpoint, SkyPrint extends climate awareness through the full travel journey: booking, pre-flight, in-flight context, post-flight reflection, and aggregate summaries.

Aero's voice interface is another standout feature. Users can literally ask spoken questions about airline climate performance or contrail science and receive a grounded, data-backed response in natural language.

Finally, the interactivity of the simulation page makes a genuinely technical tradeoff legible to a non-expert user. Watching the system update in real time as altitude changes makes the relationship between routing and warming feel immediate and understandable.

What We Learned

We learned that the hardest part of climate software is often not the underlying science, but the presentation of uncertainty and complexity. It is not enough to compute a technically correct answer; the answer must also be interpretable, legible, and actionable for a non-expert.

We also came away believing that aviation's climate problem is, in large part, a visibility problem. The technology to reduce contrails already exists. What is missing is a mechanism for passengers, journalists, and advocates to see who is acting and who is not. Software is well suited to closing that gap.

What Comes Next

There are several natural extensions for SkyPrint.

  • A browser extension that overlays SkyPrint climate scores directly onto flight booking platforms such as Google Flights, Kayak, and Expedia.
  • A public API for journalists, researchers, and NGOs to query airline rankings and climate metrics programmatically.
  • Satellite-validated contrail verification by comparing model predictions against remote sensing imagery to improve calibration over time.

Our long-term thesis is simple: if passengers can clearly compare airlines on contrail-aware climate performance, then demand can begin to reward mitigation. Once that happens, the business case for avoidance routing strengthens quickly. SkyPrint aims to be the interface layer that makes that market signal possible.

Built With

Share this project:

Updates