Documentation

Guides, tutorials, and frequently asked questions

Is the Moon Worth Looking Up Tonight? A One-Line Verdict | Selene

Frequently asked questions

What does Selene actually tell me?
One line: worth a look tonight, or hidden by clouds. It fuses phase, position and sky conditions into a single honest call rather than a percentage readout.
What happens when Selene does not know?
It says so instead of faking certainty.
How does it know the sky conditions?
All astronomy runs on device, with WeatherKit supplying hourly cloud cover.
Do I need an account?
No. No account and no tracking — your sky stays yours.
What exactly counts as worth looking up?
Cloud cover under 45% with the moon above your local horizon. It is a fixed rule, not a confidence score, and 80% cloud cover or more vetoes the whole night no matter what else is true.
How far ahead does tonight's weather data go?
The forecast covers about ten days, the span WeatherKit provides hourly. Scrub past that, go offline, or deny location, and the verdict falls back to astronomy only — the honest label, not a fabricated clear-sky percentage.

The short answer

Selene answers tonight's question with one line, not a number: "◐ Worth looking up — worth a look tonight", "☁ Clouded out — hidden by clouds", or "↓ Below the horizon — hasn't risen yet". The line comes from a single fixed set of rules that compare hourly cloud cover against the moon's altitude at your location, your local horizon obstruction, and whether a rare sky event lands tonight. When there is no weather source for your location or date, the app says "Astronomy only · no weather source" instead of inventing a percentage. You can see what it decides on the Selene product page; the rest of this page is what those rules actually check and where they stop.

Why you are asking this

The question behind "is the moon worth looking up tonight" is not curiosity about the moon. It is a small, concrete decision you are trying to make: do I put on shoes and walk to the window, or do I stay in. Most moon apps cannot help with that, because they are built around a different input. They are calendars and tables: an illumination percentage, a moonrise time, a phase picture, maybe a small weather icon from the system's own forecast. Every one of those numbers is correct and none of them combines into an answer. "Waxing gibbous, 62% illuminated, rises 19:42" does not tell you whether a cloud will be sitting on it at 19:42 from where you stand, and a system weather icon does not know the moon exists.

Worse, the table invites a misreading. "38% clear" is not a chance of seeing the moon; "62% illumination" is not how interesting it is. Those numbers describe the sky and the moon separately, and the user has to be the one to fuse them, usually badly, at the exact moment they are trying to decide whether to bother. A weather app has the opposite flaw: it is honest about clouds and silent about the moon. The night you need is an intersection, and almost nothing in the category computes it.

How the verdict is actually decided

Selene has one arbiter, and it evaluates in a fixed priority order, so two facts can never produce two verdicts:

  1. Rare event, cloud cover under 70% → "★ Rare event tonight — a rare sight tonight". This does not require the moon to be up at all; a total lunar eclipse is announced before moonrise on purpose.
  2. Cloud cover 80% or more → "Clouded out". This outranks everything else, including a rare event: at 90% cloud the night is called overcast rather than prime, because a total eclipse behind solid cloud is not a sight.
  3. Moon at or below the local horizon → "Below the horizon". The wording branches: "hasn't risen yet" when it is below the astronomical horizon, "blocked from your spot" when it is astronomically up but under the obstruction angle you set in Settings (a building, a hill). The moon exactly at 0° counts as down.
  4. Cloud cover under 45% and moon up → "Worth looking up". The wording branches again: "worth a look tonight" if it is already up, "rising later tonight" if it is not.
  5. Everything else → "Not much to see". This is the 45% to 80% band: the moon is up, but the sky is mediocre.

The two numbers worth remembering are 45% and 80% cloud cover, and they are constants in the code, not a dial you can tune. The same 45% is also the bar for the "best viewing window" the app offers ("78% clear · best 22:00–23:00"), because the app deliberately reuses one definition of "clear enough" for both the badge and the window. The obstruction angle does not apply to rule 1: a rare event is still called prime from a city with tall buildings.

The weather side comes from Apple WeatherKit, as hourly cloud-cover percentages. Selene fetches the whole ten-day window once and serves each scrubbed day from that cache, refreshing after 30 minutes, and it rounds your coordinates to about 0.1° (roughly 11 km) before sending them, so walking around your city does not trigger a new request and the provider never sees a precise position. The number that feeds the verdict is the mean cloud cover across the whole night.

The astronomy side is pure on-device math. Illumination comes from the Sun–Moon elongation angle, the moon's age is that angle divided by 360 times the synodic month (29.5306 days), and the eight phase names are cut from illumination at fixed thresholds: below 2% is New Moon, 98% or above is Full Moon, below 48% is a crescent, 52% or above a gibbous, and the middle band is quarter. None of this touches the network or is stored; it is recomputed for every date and location. Traditional full-moon names are kept, on the grounds that they are calendar facts rather than astrology, while astrology language is deliberately absent.

When Selene cannot answer

This is the part competitors skip and the part you should actually judge an app on. A forecast can fail for ordinary reasons: you denied location, you are offline, you scrubbed past the ten-day window, or the provider itself returned an error. When that happens the sky half of the verdict is dropped entirely, and the arbitration degrades to a single question: is the moon above your local horizon? If yes, the call is the neutral "worth looking up"; if no, "hasn't risen yet".

Three things follow from that design, and they are the substance of the honesty claim:

  • The clear-sky percentage is not shown. It would be a fabricated 100% (100 minus a non-existent forecast), and the astronomy-only label is printed instead.
  • No "rare sight" badge and no best-viewing window. Without confirmed visibility, it will not claim an eclipse is worth staying up for.
  • The verdict is about the moon being up, not about the sky being clear. Reading "worth looking up" as "worth looking up at" is a mistake; the app's own label is the thing to read.

This is also why the distinction between "clouded out" and "I don't know" matters. "Hidden by clouds" tells you to make other plans. "Astronomy only" tells you the app needs one more data source, and that the ordinary fix is to check your weather app yourself and then trust its moonrise, altitude and bearing. An app that cannot tell those two apart is either lying or guessing.

Where the arithmetic gets rough

Selene averages hourly cloud cover into one number for the night. That flattens exactly the nights people most want to go out for: a cloudy evening that clears at 1 a.m. becomes a mediocre verdict, and a clear dawn followed by an overcast evening becomes a good one. At least the app shows the best viewing window alongside the verdict, computed from the hourly series as the longest run of hours that are both under 45% cloud and above your obstruction angle (ties go to the earlier window, because people would rather go out early than stay up). But the headline call is the night's average. If your weather turns over after dark, that is the number to expect to be wrong.

Then there is what the model does not look at. It does not consider haze, fog, smoke, light pollution, or whether a tree is in the way. "Worse than nothing" is a fair summary of the 45% to 80% band. And an 80% clear figure means "not fully overcast", not "a great view". Astronomy-specific forecast apps do score transparency and seeing conditions, and can call a hazy-but-clear night worse than a slightly cloudy crisp one; Selene does not model that, and its interface is the cleaner trade for someone who is not setting up a telescope.

The honest limits

The ephemeris is deliberately consumer-grade, and the app says so. Position uses mean-element analytic formulas plus the single largest perturbation term, giving angular error on the order of a few tenths of a degree and distance error of a few hundred kilometres. That is plenty for an AR overlay, a compass bearing, or an altitude readout, and it is not a navigational instrument; precision-level work would need a full lunar theory, and eclipse timing to the second is not what this engine is for. Illumination and phase, which use the standard low-precision solar position, are effectively exact.

Location is another honest surface. If no real fix is available, Selene falls back to a fixed San Francisco coordinate and labels the screen "APPROX. LOCATION" instead of quietly pointing at the wrong moon, and coarse-grained coordinates are what go to the weather provider regardless. The AR sky view uses the device's true-north motion data at 30 updates per second; where the motion sensors are unavailable, it drops to a drag-to-look mode rather than faking a heading. And the verdict is only as good as its weather half: a clear-sky call at 100% cloud cover is the weather being wrong, not the moon being wrong, and the moon facts never change.

The rare-event radar currently ships a bundled catalogue of four total lunar eclipses (March 2026, then December 2028, June 2029 and December 2029) from NASA's Five Millennium Canon with peak times and totality durations; alerts are off by default with a 30-minute lead, and weather-aware alert delivery is a Pro feature. Supermoons are named in the product copy but are not computed by the current build. All of tonight's verdict, the full calendar, moonrise and moonset, the folk moon names and the AR view are free; Pro adds unlimited time travel, weather- aware alerts, multiple locations and advanced AR alignment, as a yearly subscription or a one-time lifetime purchase.

What Selene does differently, and what you can now decide

Selene's differentiator is that the first screen is a decision, not a table, and that the decision is produced by one set of rules you can read before you install anything. The numbers competitors show are still there, one layer down. The cost is that it is an iPhone app with a judgement baked in: five fixed states, a ten-day weather horizon, and a call that is only ever as good as WeatherKit.

So the decision is simple. If tonight's question is "do I go outside", Selene is the only app in its category that answers it, answers it in one line, and admits when it cannot. If your question is "what phase is it on the 14th" or "how bright will it look", you want the calendar, which Selene also has and does not charge for. If you want tonight's sky graded on transparency and seeing conditions for imaging, a specialist forecast will still beat it.

Related apps