You don't listen to "Walking on Sunshine" in a thunderstorm. You don't put on "Riders on the Storm" at high noon on a cloudless day. The match between weather and music is so obvious we barely think about it — until a streaming service cues up a beach anthem during a winter blizzard and breaks the spell.
RoadyGoat is built on the opposite premise: where you are and what the sky is doing should shape what you hear. The location piece is what we're known for. The weather piece is newer. Here's how it works.
The Five Solar Phases
Before we get to clouds, there's the sun. Every minute of every day falls into one of five solar phases:
- Sunrise — the half-hour around dawn. Cold light, slow songs, the world waking up.
- Midday — the long bright stretch. Higher tempo, brighter keys, road songs.
- Golden Hour — the 60-90 minutes before sunset. Warm light, warm music. Country gets country-er; soul gets slower.
- Sunset — the actual horizon-crossing. Brief, dramatic, and the highest-impact window for emotional songs.
- Night — everything after dusk. The biggest tonal swing — bass-heavy, lyrical, more risk-tolerant.
The app knows where you are, calculates the local solar position in real time, and tags every potential song with which phases it fits. A song doesn't have to belong to one phase — most don't. But songs that do fit the current phase get a play-probability boost.
The Weather Layer
On top of the solar phase, we read live conditions: temperature, precipitation, cloud cover, wind. Lyrics get a parallel treatment — every song in the database has been analyzed for weather references and "vibe weather," the implied climate of the song even when no weather word appears.
"Summertime" doesn't just match summer; it matches warm. "Cold Shoulder" matches cold weather even though the title is a metaphor. "Rainy Night in Georgia" obviously plays best in rain — and obviously plays best in Georgia.
The probability boost is multiplicative. A rain-tagged song in Georgia, on a rainy night, near Atlanta, by an Atlanta artist? That song is going to play. A summer beach anthem in a December ice storm? It won't.
Why This Isn't a Gimmick
It would be easy to write this off as decoration. "The app plays sad songs when it rains, isn't that cute." But there's a real algorithmic reason for it: music recommendation systems are bad at context. Spotify knows what you like. Spotify doesn't know that right now, in this moment, the sky is doing something specific and that should change the answer.
Most weather is wasted. You drive past a thunderstorm rolling in over the plains, you see the clouds stack, the light go strange, and the soundtrack to that moment is whatever happened to be next in your queue. RoadyGoat is trying to not waste the sky.
What's Coming Next
The current weather model handles the obvious cases well. The interesting work is in the edges:
- Sunset over the desert. Different vibe than sunset over the ocean. We're starting to factor in landscape — desert states, coastal cities, mountain regions.
- Storm fronts and pressure changes. The hour before a storm has its own feel. Songs about waiting, watching, dread.
- Seasonal drift. March in Texas is not March in Minnesota. The system is learning to read season-as-experienced, not just calendar-month.
- Wildfires and air quality. An orange sky from smoke a thousand miles away is real weather; it should change what plays.
Try It
The next time you open the map, look at the time of day, look out a window, and notice what's playing. We've tuned the weights so it should feel intentional — not on-the-nose, just right.
And if you ever hit a song that feels wrong for the moment, tap the dislike button. The weather model learns from that too.