Skip to content

Can I trust Wesper?

unTRUSTED 75 Android Version 4.1.0 (versionCode 215) Scanned build downloaded: Store version released: Last checked: co.wesper.sleep Scanned

This app did not meet two or more trust checks, has a critical issue in one, or has a red flag.

What it means for you
Biometric health data, including sleep metrics and audio recordings, is addressed in code only to Wesper's own servers, and no advertising networks or data brokers are named as destinations. The app is configured to prevent health files from being extracted via device backup. The build includes code to send usage and app performance data to Firebase Analytics and Google services for diagnostics and improvement.
Main concern
Auth token stored plaintext in SharedPreferences — full account and health data exposure
The developer's description
The Wesper app pairs with Wesper's wireless at-home sleep analysis tool to analyze snoring, respiration rate, breathing, heart rate, and sleeping positions. Receive real-time sleep metrics and actionable insights from sleep specialists to improve your sleep quality.
Third-party services
14
Findings rated low or higher
10

How the score and the label work

Open on Google PlayOpens the app's listing on Google Play in a new tab.

Full findings

Open this scan in your dashboard

The account that ran this scan sees every finding and the Rescan button there.

Trust checks

  • Secure by Design

    Items recorded, result pending review

    Security gaps detected

    Why this result

    This check looks for security issues at high severity or above in the code of this build, and at least one was recorded. Issues of this kind include a credential or token another app on the device can reach, sensitive data stored without protection, and network paths that expose information in transit.

  • Data Minimization

    Items recorded, result pending review

    Tracking lacks clear disclosure

    Why this result

    This build contains analytics or attribution code written to send data to companies other than the developer. No consent step was found before that code runs, and the app's disclosures do not describe the collection in full. Tracking by itself is ordinary; what this check reports is the combination of collection, recipient and absent disclosure.

  • Manifest Mismatch

    An item rated high or above is open

    Disclosure incomplete or contradicted

    Why this result

    The check compares the app's privacy disclosures against what the code does, and at least one claim did not match in this build. Mismatches of this kind include a data category collected but not disclosed, a recipient the disclosure omits, and an identifier attached to data the disclosure describes as anonymous.

  • User Control

    Strong

    No lock-in

    Why this result

    The check looks for a way to export the data an account has accumulated and a way to delete the account itself. In this build, either both were found, or the app has no account of its own and keeps its data on the device. For an app without an account, the developer has no server-side copy to export or delete, and deleting the app removes the data in its own storage.

    The app's backend supports account deletion, and sleep diagnostic reports are accessed through a standard web browser rather than a proprietary locked viewer. No artificial barriers to closing the account or switching away from the service were identified.

  • Truly Local

    One criterion not met

    Contains code to send personal data off the device

    Why this result

    This app presents itself as working offline or on the device alone, and this build contains code written to send personal data to servers. The check covers analytics, crash reporting, advertising code and any first-party endpoint the code addresses personal data to. Code of this kind is common; what this check reports is the distance between that code and how the app describes itself.

Red flags

  • The app's privacy declarations do not match its code

    Why this result

    The privacy declarations shipped in this build, or the ones on the store listing, state less than the code does. Declarations of this kind are what a store, a regulator and a person comparing two apps rely on.

Strengths

  • No advertising, attribution, or session recording SDKs are present — the third-party tracking surface is limited to crash diagnostics only
  • The app includes code to upload biometric health data (SpO₂, heart rate, respiration, snoring audio) only to Wesper's own first-party servers, and includes no code to pass it to ad networks or data brokers
  • App backup is fully disabled via both allowBackup=false and data_extraction_rules.xml — biometric files and credentials cannot be extracted via ADB or cloud backup
  • Sensitive credentials (password, order code, group code, birthdate) are encrypted with AES-256-GCM using Android EncryptedSharedPreferences — the infrastructure is already in place for full coverage

What the app contains

  • 14 services

    Third-party services the scan names in the build:

    • Firebase Crashlytics
    • Firebase Remote Config
    • Firebase Installations
    • Firebase Sessions
    • Firebase Analytics
    • Firebase ABT
    • Google Play Services
    • Google Tink
    • OkHttp
    • Retrofit2
    • Koin
    • Lottie
    • Acuity Scheduling (wesper.as.me)
    • Azova (azova.com)

Libraries

Libraries in the build of Wesper
LibraryVersionAdvisory
Roomnot recordednone confirmed
Lottienot recordednone confirmed
Datatransportnot recordednone confirmed
Google Play Services12451000none confirmed
Google Tinknot recordednone confirmed
Firebase12451000none confirmed
OkHttp5.1.0none confirmed
Okionot recordednone confirmed
Retrofitnot recordednone confirmed
Koinnot recordednone confirmed
Show all 12 libraries

Changes since the previous scan

  • Version 4.1.0 (versionCode 215), score 75.
  • Score 88 before, 75 after.
  • Version 2.34.0 (Build 198) before, 4.1.0 (versionCode 215) after.
  • Score change since version 2.34.0 (Build 198): -13 points.
  • Since the previous scan: 12 findings added, 3 removed.
  • Version 2.34.0 (Build 198), score 88.
  • First public scan of this app.

Method and limits

Static analysis: the decompiled code, manifest and resources of this build, read file by file. Network traffic at run time is established by a capture of the running app.

Build SHA-256
17690f5d34b53515f1d846cc610d9cad075873f99856c037ba3dd71a5b451c56
Rule pack
citt-ruleset-2026-08-v1
Files decompiled
10,654
Scan date
12 August 2026

Corrections

No correction is published for this app.

Developer response

No response is published for this app.

Report an error Opens an email to [email protected] that names this app and this scan.