Daylight: Description
Daylight logo

Daylight: Sun & Polar Tracker

Android application – free, ad-supported

View on Google Play →

Overview

Daylight shows how much daylight you get: sunrise, sunset and the length of the day for any place on Earth and for any date within five years back or ahead. All times are calculated directly on your device, using the well-established sunrise/sunset algorithm published in the Almanac for Computers (1990) by the United States Naval Observatory.

A few things set Daylight apart from typical sunrise & sunset apps:

  • Fully offline operation – every core feature works without an internet connection, including searching for locations by name. The app ships with an embedded database of about 68,000 cities and towns, so it can find places and name your GPS position entirely offline – on a plane, on a remote hike, or with mobile data switched off. Time zones for hand-entered coordinates are resolved offline as well, from boundary data bundled with the app. Only the ad banner uses the network; without a connection it simply stays hidden.
  • Comparisons between consecutive days – the app tells you, to the second, how much longer or shorter today is than yesterday and tomorrow, so you can actually see the daylight changing through the year.
  • Comparisons with the extremes of the year – it also shows how far the current day is from the longest and the shortest day of the year at your location, together with a countdown to the next solstice.
  • Polar day and polar night – high latitudes get dedicated views. When the sun does not set (Midnight Sun) or does not rise (polar night), Daylight explains what is happening and counts down to the next sunset or sunrise, which may be weeks or months away.

This makes the app most rewarding at higher latitudes – where day length changes quickly and polar phenomena occur – and for travelers who want to check daylight at their destination without a network connection.

Daylight main view for London showing the circular sun dial, sunrise 06:16, sunset 18:06 and length of day

The main view

The heart of the app is a circular, 24-hour sun dial: noon is at the top, midnight at the bottom, and the blue slice represents the daylight portion of the day. A sun marker travels around the dial and shows the current moment, and the sunrise and sunset times are labeled where day meets night. At a glance you can see not only when the sun rises and sets, but also what fraction of the whole day is daylight.

Above the dial, two cards show the current location (place name and coordinates) and the selected date, each with a Change button. Below it, dedicated cards list the exact sunrise and sunset times (to the second) and the resulting length of day. The whole view can be enlarged with a pinch-to-zoom gesture (up to 3×) – useful for reading the details from a distance or for anyone who prefers larger text.

Day-to-day and seasonal comparisons

Scrolling down reveals the comparison section – the part of the app that shows how daylight is changing:

  • Consecutive days – two lines state whether today is longer or shorter than yesterday and than tomorrow, with the exact difference down to the second (for example “Today is shorter than yesterday by 00:00:43”).
  • Yesterday and tomorrow cards – the precise sunrise and sunset times for the neighboring days, so you can compare them directly.
  • Difference to the shortest and longest day – how much more daylight you have than on the shortest day of the year at this location, and how much is still missing to the longest one. The actual day lengths of both extremes are shown as well. On the solstices themselves the app simply states “Today is the longest day” or “Today is the shortest day”.
  • Solstice countdown – the number of days remaining to the shortest or longest day of the year.

All comparisons are calculated for the selected location and date, so you can just as easily check how fast the days are getting longer in Tromsø next February as at home today.

Comparison section showing day length, differences to yesterday and tomorrow, differences to the shortest and longest day, and days remaining to the shortest day

Polar day and polar night

Inside the polar circles the sun behaves differently: in summer there are periods when it never sets (the polar day, or Midnight Sun), and in winter periods when it never rises above the horizon (the polar night). Many sunrise apps simply fail or show meaningless times there. Daylight instead switches to one of two dedicated views:

  • Midnight Sun – a bright, animated view stating that the sun does not set below the horizon, together with the date and time of the next sunset and a countdown to it (for example “in 65 days and 12 hours”).
  • Continuous Night – a dark, starry view stating that the sun remains below the horizon, with the date and time of the next sunrise and its countdown. A short note explains that although true daylight does not exist during the polar night, twilight may still occur around midday depending on the latitude.
Polar day view for Longyearbyen, Svalbard: Midnight Sun with the next sunset on Aug 26 in 65 days and 12 hours Polar night view for Longyearbyen, Svalbard: Continuous Night with the next sunrise on Feb 16 in 56 days and 23 hours

Choosing a location

When the app starts for the first time, a welcome screen lets you decide how to pick a location. There are four ways, and none of them requires an internet connection:

  • Get device location – reads your position once, only when you tap the button. The app never reads your location in the background and never tracks you. The place name for your coordinates is resolved from the embedded offline database.
  • Search by name – type at least three characters of a city name and pick from the offline results, ordered by population. Because the database is bundled with the app, the search works with no network at all.
  • Enter coordinates manually – type a latitude and longitude directly. This reaches the places the town database cannot: a cabin, a summit, a trailhead, a point at sea, or simply somewhere with no town nearby. It is described in detail below.
  • Recent locations – the last five locations you used (whether from GPS, typed by hand or picked manually) are offered on the start screen and in the search dialog, so returning to a place takes one tap.

Whichever way you choose, the location is then fixed: the app never switches to a different location on its own, so it keeps showing the place you selected until you change it yourself.

The location permission is optional. If you deny it, nothing is lost except the “Get device location” button – manual search and recent locations work exactly the same. The start screen also offers a “Start with last used location” switch: when enabled, the app skips the welcome screen on the next launch and reopens directly on the location you used last time.

Start screen with Get device location and Select location manually buttons and the Start with last used location switch Start screen listing recent locations: New York City, Shanghai, Kraków, Kielce and Ostrowiec Świętokrzyski Search Location dialog with a city name field, recent locations and buttons for Enter coordinates manually and Use Current Location (GPS)

Entering coordinates by hand

The town database covers populated places, which is exactly what a remote location is not. The “Enter coordinates manually” button in the search dialog opens a screen where you type a latitude and longitude yourself, so any point on Earth can be used – including the high latitudes and empty regions where daylight is most interesting and towns are scarcest.

  • Two formats, freely interchangeable – signed decimal degrees (50.178863 / -1.826176, where south and west are negative), or degrees, minutes and seconds with N/S and E/W buttons (50° 10′ 43.907″ N). Switching between them converts what you have already typed, so you can start in one and finish in the other.
  • A dedicated + / − selector – next to each decimal field, so entering a negative coordinate never depends on where a particular phone keyboard hides its minus sign.
  • Clear, Paste and Copy – paste understands the usual written forms, for example 50.3 20.2 · -50.3, 20.2 · N50.3 E20.2 · 50° 18′ 0″ S, 20° 12′ 0″ E; and copy hands back the format currently on screen. Anything that is not a valid coordinate pair is refused rather than guessed at, and the fields are left untouched.
  • Checked as you type – latitude is limited to ±90° and longitude to ±180°, and the OK button stays disabled until both values are complete and in range.
  • A “Start with last used location” checkbox – the same setting as on the start screen and in Preferences, so a typed point can become the place the app opens on.

A typed point is treated exactly like any other manually chosen location: it is added to Recent locations, it can be used by the widgets, and the app keeps showing it until you change it. If there is a known place near the coordinates, its name is used as the label; if there is none, the coordinates themselves become the label rather than the location being unusable.

Typed coordinates also get their correct local time zone, worked out offline from timezone boundary data bundled with the app. That data covers the entire globe, oceans included, so a point in the middle of the Pacific, on the Greenland ice cap or in the middle of a desert shows times for where it actually is. A position read from the device keeps the phone’s own time zone, and a town picked by name keeps the time zone recorded for that town – in both of those cases there is already a trustworthy answer, so nothing needs to be looked up.

Enter coordinates screen in decimal format with latitude 50.178863, longitude -1.826176, plus and minus selectors and Clear, Paste and Copy buttons Enter coordinates screen in degrees, minutes and seconds format showing 50 degrees 10 minutes 43.907 seconds North and 1 degree 49 minutes 34.234 seconds West

Choosing a date

Daylight is not limited to today. Tapping Change next to the date opens a calendar where you can select any date up to five years in the past or future – check the sunrise time for a planned trip, or see exactly how short the days will be in December. A Today button brings you straight back to the current date.

The selected date is intentionally temporary: it stays while you use the app, but the app returns to today when it is started again, so you never look at an old date by accident.

Select Date dialog with a calendar for July 2026 and Today, Cancel and OK buttons

Sunrise and sunset alarms

From the menu you can set a one-time alarm for the next sunrise, the next sunset, or both, at the location currently shown in the app. For each alarm you choose:

  • Whether it is active – independent checkboxes for the sunrise and the sunset alarm.
  • The sound – one of five built-in sounds (Rooster Crowing – the default, Rooster Call, Doorbell Chime, Correct and Ding). Selecting a sound plays a short preview.
  • The lead time – a slider from 0 to 60 minutes, so the alarm can ring, for example, 45 minutes before the sun actually rises, which is enough time to get to a viewpoint before it happens.

Saved alarms are listed in the same dialog under Currently set alarms, together with the location, sound and lead time, and each can be cancelled with one tap. If the alarm’s location is in a different time zone, the dialog also shows the time converted to your local zone.

The alarms are deliberately one-shot: each fires once for the specific upcoming sunrise or sunset, then it is done – nothing keeps running in the background afterwards. Alarms survive a phone restart. If the moment was missed (for example the phone was off), the alarm is dropped rather than ringing at a wrong time. During a polar day or polar night, when there is no sunrise or sunset to wake up to, alarms are unavailable and the dialog explains why.

Please note that this is not an alarm clock: the alarm is delivered as a regular notification, so it respects your phone’s sound settings. If the phone is in “vibrate only” or silent mode, the notification appears and the phone vibrates, but the selected sound plays only when the phone’s sound is on.

Set Alarm dialog with checkboxes for the next sunrise and sunset, sound selection and a minutes-before slider

Home screen widgets

Daylight offers two home screen widgets: a large “Daylight today” card with the full picture of the day, and a small “Sun countdown” tile with a single number. You can place either of them, or both, and they share one location setting.

Daylight today

The “Daylight today” widget puts the essentials on your home screen: today’s sunrise and sunset, the length of the day, the change compared with yesterday, and whether it is currently day or night at the widget’s location. In polar conditions the widget switches to Midnight Sun or Continuous Night with a countdown to the next event. A small note tells you how fresh the data is (for example “updated just now”).

Daylight today widget showing sunrise, sunset, length of day, change versus yesterday and a Night indicator for Shanghai

Sun countdown

The “Sun countdown” widget is the opposite of the one above: a small tile, two columns wide and one row high, showing one glanceable value – how much time is left until the next sun event. A sun or a moon icon leads the value, and a short caption below says what is running out: of day left while the sun is up, of night left while it is down.

  • It follows the sun, not your phone theme – the tile is a bright sky with dark text while the sun is above the horizon at its location, and a dark night card with light text after sunset, so you can tell day from night without reading a single word.
  • Readable numbers – under a day the value is shown as 2 h 24 min (or just minutes in the last hour); longer waits become 101 d 9 h. The value always shrinks to fit the tile instead of being cut off.
  • Polar periods too – during a polar day the tile counts down to the sunset that ends the Midnight Sun, during a polar night to the sunrise that ends it, with the caption polar day or polar night. Such a countdown can be weeks or months long.
  • Light on the battery – the tile refreshes only when the displayed text would change: every minute while it counts hours and minutes, once an hour while it counts days, and at sunrise and sunset when the colors flip. It never wakes the phone up to do it, and while the screen is off the countdown simply pauses and catches up before you look at it.

Tapping the tile opens the app, exactly like the larger widget.

Sun countdown widget with a sun icon, 2 h 24 min and the caption of day left on a light blue sky background Sun countdown widget with a moon icon, 8 h 23 min and the caption of night left on a dark background

Widget settings

Both widgets share one settings screen, available from the app menu, with a single choice – the location source:

  • The same as last location in the app (recommended) – the widgets follow whatever location the app showed last.
  • Use different location – the widgets get a fixed location of their own, picked with the same offline search or typed in as coordinates. Useful for keeping an eye on daylight somewhere else, such as a place you are about to travel to.

The setting applies to both widgets at once, so they always show the same place. Widget settings affect only the widgets – they never change the location shown in the app, and the widgets never read the device location on their own.

Widget settings screen with the location source options and the current widget location

Preferences

Daylight keeps its settings minimal. The Preferences dialog contains a single switch:

  • Start with last used location – when enabled, the app reopens on the location you last used, whether it was picked manually or read from the device, without reading the device location again on launch. When off, the app opens on the start screen where you choose how to find your location. The same switch is also available directly on the start screen; changing it in either place updates both.

Everything else – the selected date, the zoom level – deliberately resets when the app restarts, so it always opens in a predictable state.

Preferences dialog with the Start with last used location switch and its explanation

Other features

  • Pinch-to-zoom – the whole main view (standard, polar day and polar night) can be zoomed from 1× to 3× and panned freely.
  • Accessibility – the app works with TalkBack: the sun dial is read out as a spoken summary (sunrise, sunset, current time, day or night), and purely decorative animations are skipped by the screen reader.
  • Instant reopening – recently viewed locations and dates are cached on the device, so returning to them shows results immediately, again without any network use.
  • Accuracy notice – the displayed times are calculated estimates. The actually visible sunrise and sunset may differ depending on terrain, nearby obstacles, atmospheric conditions and the exact observation point. Treat the times as guidance only and do not rely on them for safety-critical decisions.

Advertisements and privacy choices

Daylight is free and supported by advertising: a single small banner ad (Google AdMob) may appear at the bottom of the main screen. The ads are deliberately unobtrusive:

  • One banner, fixed at the bottom – the ad lives in its own strip below the content. It never covers the sun dial or the cards, and it is not affected by pinch-to-zoom: zooming and panning work on the content above it exactly as before.
  • No ad, no empty space – when no ad is available (for example without an internet connection), the ad strip disappears completely and the app looks and behaves like an ad-free app. All features keep working offline; only the banner itself needs a network connection.
  • Consent first – where required by law (for example in the EEA under GDPR), the app shows Google’s consent dialog before any ad is requested. Your choices can be changed at any time via Privacy Settings in the app menu, which is shown whenever the consent framework applies to you.

Permissions

Daylight requests only the permissions it needs for the features described above:

  • Location – used to show daylight data for where you are. It is optional: the location is read only when you explicitly tap “Get device location” or “Use Current Location (GPS)”, never in the background, and the app is fully usable with manual location selection if the permission is denied.
  • Alarms & reminders (exact alarms) – lets a saved sunrise or sunset alarm fire at the exact time instead of being delayed by the system. It is requested only when you save an alarm, and you can revoke it at any time in the system settings.
  • Notifications – used to show and sound the notification when a sunrise or sunset alarm fires.
  • Run at startup – Android clears scheduled alarms when the phone restarts; this permission lets Daylight re-register your saved alarms and refresh the widgets after a reboot.
  • Internet access – used only for displaying the banner advertisements (Google AdMob) and the related consent dialog. The application itself does not send any of your data over the network; all daylight calculations, location search and stored data remain on the device, and everything except the ad banner works fully offline.

Works by other authors used in the application

Daylight builds on the work of others, and this section credits it fully. It repeats and expands the information available in the app’s About dialog.

Location data (GeoNames)

The offline location search and the naming of GPS positions use data from GeoNames – specifically the cities5000 dataset (populated places with at least 5,000 inhabitants, about 68,000 entries), transformed into an embedded SQLite database so it can be used entirely offline. GeoNames data is licensed under the Creative Commons Attribution 4.0 International License. GeoNames data is provided “as is”, without warranty or any representation of accuracy, timeliness or completeness.

Time zone data (timezone-boundary-builder, OpenStreetMap)

Time zones for manually entered coordinates are resolved offline from timezone boundary data produced by timezone-boundary-builder. That data is derived from OpenStreetMap: it contains information from OpenStreetMap, © OpenStreetMap contributors, available under the Open Database License (ODbL) 1.0.

The copy embedded in this application is a Derivative Database: the boundaries have been simplified onto a grid so that they fit on a phone. That derived database, and the script that produces it, are offered under the same ODbL 1.0 licence and can be obtained here: github.com/jakubhalun/datasets →

Alarm sounds (Pixabay)

All five alarm sounds were created by DRAGON-STUDIO, published on Pixabay and used under the Pixabay Content License. The author makes all of their sound effects and music free for commercial and personal use:

Sound (name in the app) Author Source
Rooster Crowing DRAGON-STUDIO pixabay.com →
Rooster Call DRAGON-STUDIO pixabay.com →
Doorbell Chime DRAGON-STUDIO pixabay.com →
Correct DRAGON-STUDIO pixabay.com →
Ding DRAGON-STUDIO pixabay.com →

Astronomical algorithm

Sunrise and sunset times are computed with the algorithm published in the Almanac for Computers, 1990, Nautical Almanac Office, United States Naval Observatory, Washington, DC 20392.