DeltaSleep
Free and open source · MIT licence

Sleep tracking that never leaves your phone.

DeltaSleep scores your sleep stages and detects snoring on the device. It has no INTERNET permission, so it cannot send your data anywhere.

  • No account
  • No ads or tracking
  • Android and iPhone
A hypnogram of one night with awake, light, REM and deep stages
0Network permissions
0 bytesSent to any server
30 sSleep stage resolution
≤ 3%Battery target per night
Features

Everything your night has to tell you

The phone listens to movement and breathing sounds, then writes a short summary and discards the audio.

Sleep stages

Awake, light, deep and estimated REM in 30 second epochs. You do not need a wearable.

Snore detection

Band power from 20 to 300 Hz marks each snore with an intensity from 1 to 5. The app saves no audio clip.

Apnea screening

A breathing-pause report to show a doctor. It is a screening aid, not a medical device, and it does not diagnose.

Trends

Sleep time, deep sleep and snore share over 7, 30 and 90 nights.

Your data, your folder

Export every epoch as CSV to a folder you choose. Delete everything at any time.

Quiet on battery and music

Spotify, Audible and podcasts keep playing, because the app mixes with other audio.

The app

Clear charts, no spinner

Tap Stop and the result is there. There is no sync, because there is no server.

Home screen with the Start Sleep button

Home

One tap starts a night.

Hypnogram of one night

Session

Stages and snore events.

Weekly sleep bar chart

Trends

Weeks and months at a glance.

Apnea risk report with a 30 night trend

Report

A summary for your doctor.

How it works

From microphone to chart, on the device

  1. You tap Sleep

    The microphone calibrates to the room noise. There is no account and no sign-in.

  2. A Rust core listens

    It reads 10 ms frames and measures level, zero crossings and low-band power.

  3. The audio is gone

    Every 30 seconds the app writes one label to local SQLite and discards the raw sound.

  4. You wake to a chart

    Tap Stop. The hypnogram appears at once.

Privacy you can check

Ask it to send your night somewhere

Type any server. Android refuses the connection, because the app does not declare the INTERNET permission.

CI also fails the build if http, socket or fetch appears in the source.

Connection test
Destination
cloud.sleepdata.com
INTERNET permission
Not declared
Network libraries
0
Bytes sent
0
Result
Refused by Android
Open source

Read every line

The full source is on GitHub under the MIT licence. Build it yourself and compare.

Interface
Kotlin and Jetpack Compose on Android, SwiftUI on iOS
Signal core
Rust, shared by both apps
Storage
Room and SQLite in app-private storage
Minimum
Android 8.0, iOS 17
Licence
MIT

Install it, then unplug.

Free, with no ads and no account.

The iOS app is in the repository under ios/.