Privacy Policy

Version 2.2  |  Effective date: 30 October 2026  |  Last updated: 2 November 2026

1. Introduction and Scope

This Privacy Policy explains how the Ecowitt application ("the App") collects, uses, stores, shares, and protects your personal information. The App is used to provision, bind, and view Ecowitt IoT weather stations, sensors, and gateway devices ("your devices").

This Policy applies to users of the App worldwide. Where this Policy conflicts with mandatory provisions of applicable law, the applicable law prevails.

Nothing in this Policy excludes or limits any statutory right you may have. Please read this Policy in full before using the App. For processing based on consent — such as push notifications or the reading of advertising identifiers — you may decline; declining affects only that specific feature and does not prevent you from using core functionality such as provisioning and viewing devices.

2. Data Controller and Contact Details

The controller of your personal data is:

3. Information We Collect

3.1 Information You Provide

3.2 Information Collected for Push Notifications

The App is built on the DCloud uni-app framework and integrates third-party push services to deliver notifications. The following information is collected automatically in order to deliver push messages:

CategoryFieldsPurpose
Device identifiersAndroid: Android ID, OAID, GAID (where the system permits, app functionality only, not for tracking), CID; iOS: IDFV, APNs device token, CID, IDFA (where the system permits, app functionality only, not for tracking)Generate a unique push target so messages reach the correct device
Network informationIP address, network type, carrierDetermine connectivity and select an available push channel
Device informationPlatform (Android / iOS), OS version, device model, brandCompatibility and troubleshooting
Usage and diagnosticsApp launch count, crash logsIdentify defects and improve stability

3.3 Advertising Identifiers (IDFA / GAID)

On iOS devices, the push service SDK may read the advertising identifier (IDFA); on Android devices, it may read the Google Advertising ID (GAID). They are used solely to generate a device identifier and to de-duplicate and measure the reachability of push messages. We do not use them for tracking across apps or websites owned by other companies, do not use them for personalised advertising, do not share them with advertising networks or data brokers, and do not use them to infer your interests or build a profile of you.

iOS: the App does not initiate the App Tracking Transparency request. On iOS 14.5 and later, without that authorisation the system returns only an all-zero value, so we do not obtain a usable IDFA; the push identifier is determined by IDFV and the APNs device token, and functionality is unaffected.

Android: you can reset or delete your advertising ID, or opt out of personalised ads, under Settings → Google → Ads. Push delivery still functions through the CID.

3.4 Information We Do Not Collect

IMEI, IMSI, SIM serial number (ICCID), device serial number, MAC address (on OS versions where these are restricted), contacts, SMS, call logs, photo library, microphone or ambient audio, health data, and we do not continuously track your location in the background. We do not collect the list of other apps on your device or your usage of them. The App builds no user profiles, carries out no automated decision-making, and serves no personalised advertising based on your personal information.

3.5 System Permissions We Request

Each permission below is requested on demand when you use the corresponding feature. Declining does not prevent the App from launching; only that feature becomes unavailable. You can change these at any time in your system settings.

Android

PermissionPurposeIf declined
Location (ACCESS_FINE_LOCATION / ACCESS_COARSE_LOCATION)Read the Wi-Fi list to provision a device; show the weather for the device's locationEnter the network name and location manually
Nearby Wi-Fi Devices (NEARBY_WIFI_DEVICES, Android 13+)Read the list of available Wi-Fi networks to select the one to joinEnter the network name manually
Wi-Fi state (ACCESS_WIFI_STATE / CHANGE_WIFI_STATE)Read and switch the current Wi-Fi connection during provisioningProvisioning cannot be completed in the App
Bluetooth (BLUETOOTH / BLUETOOTH_ADMIN, Android 11 and below)Connect to a device awaiting provisioning over BluetoothUse Wi-Fi or QR-code provisioning instead
Nearby devices (BLUETOOTH_SCAN / BLUETOOTH_CONNECT, Android 12+)Discover and connect to a device awaiting provisioningUse Wi-Fi or QR-code provisioning instead
Camera (CAMERA)Scan the device QR code; take a profile photoEnter device details manually
Flashlight (FLASHLIGHT)Illuminate when scanning a QR codeThe code may not scan in low light
Notifications (POST_NOTIFICATIONS)Push device alerts and messagesNo alert notifications; alerts remain visible in the App
Network state (ACCESS_NETWORK_STATE / CHANGE_NETWORK_STATE)Determine connectivity and maintain the push channelNotifications may be delayed
Vibration and wake lock (VIBRATE / WAKE_LOCK)Alert cues and background syncAlerts are less noticeable; sync may be delayed
Storage (READ_EXTERNAL_STORAGE / WRITE_EXTERNAL_STORAGE)Export data files; save imagesCannot export or save files

iOS

Privacy stringPurposeIf declined
Location (While Using the App) NSLocationWhenInUseUsageDescriptionRead Wi-Fi information to provision a device; show local weatherEnter the network name and location manually
Local Network NSLocalNetworkUsageDescriptionDiscover and connect to devices awaiting provisioning via local network broadcast; read data from the weather receiverDevices on the local network cannot be discovered; this can be enabled under Settings → Privacy & Security → Local Network
Bluetooth NSBluetoothAlwaysUsageDescriptionConnect to a device awaiting provisioning over BluetoothUse Wi-Fi or QR-code provisioning instead
Camera NSCameraUsageDescriptionScan the device QR code; take a profile photoEnter device details manually
Photo Library read NSPhotoLibraryUsageDescriptionSelect a profile photoCannot upload a profile photo
Photo Library add NSPhotoLibraryAddUsageDescriptionSave images or videos from the camera pageCannot save to the photo library

4. Purposes of Processing

Processing activityPurpose
Account registration and loginCreate and maintain your account
Push notificationsDeliver notifications you have enabled
Device identifier generation (including IDFA / GAID, where applicable)Push de-duplication, reachability measurement, and security verification; never for tracking or advertising
Crash logging and stability analysisFix defects and improve usability
Account and system security, fraud preventionPrevent unauthorised access and abuse
Responding to judicial or regulatory requestsCompliance with legal obligations

5. Third-Party SDKs and Sharing

We do not sell your personal information and we do not share it for cross-context behavioural advertising. We disclose personal information only to the processors listed below, in the minimum scope necessary, and require them to process it on our instructions and at a level of protection no lower than this Policy.

5.1 GeTui Push Notification SDK

ItemDetails
SDKGeTui Push Notification SDK (package: com.igexin)
ProviderGeTui / Daily Interaction Co., Ltd. (每日互动股份有限公司), Hangzhou, China
RoleProcessor
PurposeDelivering in-app messages and device alert notifications; generating and maintaining the push identifier
MethodEmbedded as an SDK; it collects and transmits the data
Data collectediOS: device platform, model, OS version, IDFV, APNs device token, IDFA (where the system permits, used only to generate a device identifier, not for tracking), IP address, carrier information (no location information)
Android: device platform, model, OS version, Android ID, OAID, GAID (used only to generate a device identifier, not for tracking), IP address, carrier information (no Wi-Fi identifiers, no location information)
Android permissionsACCESS_NETWORK_STATE, VIBRATE, WAKE_LOCK, POST_NOTIFICATIONS
Privacy policyhttps://docs.getui.com/privacy/

5.2 Zhuoxin ID SDK (GeTui dependency)

ItemDetails
SDKZhuoxin ID SDK (package: com.zx) — integrated on Android only; not integrated on iOS
RoleProcessor
PurposeProvides device identifier generation and security verification for the push service above
Data collectedDevice manufacturer, model, system information, OAID, network information
Privacy policyhttps://docs.getui.com/privacy/

5.3 DCloud uni-app Framework

ItemDetails
ProviderDCloud (数字天堂(北京)网络技术有限公司), Beijing, China
RoleProcessor
PurposeApp runtime framework and error reporting
Data collectedDevice ID, crash logs, app launch data
Privacy policyhttps://dcloud.io/license/appprivacy.html

5.4 Firebase Cloud Messaging (Google)

ItemDetails
ServiceFirebase Cloud Messaging (FCM)
ProviderGoogle LLC / Google Ireland Limited
RoleProcessor
PurposeDelivering push notifications on devices with Google Mobile Services
Data collectedFCM registration token, instance ID, device platform and model, OS version, IP address, app package name and version
Privacy policyhttps://firebase.google.com/support/privacy

5.5 Apple Push Notification Service (APNs)

ItemDetails
ServiceApple Push Notification Service (APNs)
ProviderApple Inc. / Apple Distribution International
RoleProcessor
PurposeDelivering push notifications on iOS devices
Data collectedDevice push token, app package name and version, OS version
Privacy policyhttps://www.apple.com/legal/privacy/

5.6 Push Channel Selection

The App integrates two push channels. Our servers select one of them based on your device's network environment and region. A single message is never delivered through both channels.

PlatformGoogle Mobile ServicesPush channel used
Android (global, with GMS)YesFirebase Cloud Messaging (FCM)
Android (without GMS)NoGeTui proprietary channel + manufacturer push (Huawei, Xiaomi, OPPO, vivo, etc.)
iOS—Apple Push Notification Service (APNs)

6. Cookies and Similar Technologies

The web version and embedded pages of the App use cookies and local storage, and the client uses local storage to keep your login state and interface preferences. We distinguish them by purpose as follows:

CategoryPurposeConsent required
Strictly necessaryMaintaining your login session, security checks, language and unit preferencesNo (necessary to provide the service)
FunctionalRemembering interface settings and preferencesYes
AnalyticsVisit and error statistics to improve usabilityYes
Advertising / cross-site trackingNot used by the App—

For categories that require consent, we do not set or read the relevant cookies until we have obtained your explicit consent. You can select categories individually in the prompt shown on your first visit, and you can change or withdraw your choices at any time under "Privacy Settings" in the App. You may also clear or refuse cookies through your browser settings; refusing strictly necessary cookies may prevent login-dependent features from working.

7. Security and Data Breach Notification

a. We protect your information with transport encryption (TLS), encrypted credential storage, access isolation between devices and accounts, least-privilege access controls, and internal audits. Nonetheless, no method of transmission or storage over the internet is completely secure. Please keep your account credentials safe, and contact us immediately at support@ecowitt.com if you believe they have been compromised.

b. Breach notification: if a personal data breach occurs that is likely to result in a risk to your rights and freedoms, we will notify the competent supervisory authority within 72 hours of becoming aware of it (where required by applicable law), and where the risk is high we will notify you without undue delay, describing the nature of the breach, its likely consequences, the measures we have taken, and any steps you can take to protect yourself.

c. Our servers and processors maintain access logs and anomaly monitoring, and personal information is accessed only by authorised personnel who need it to perform their duties.

8. Data Retention and Response Times

Data typeRetention period
Account data (email, username, profile)For the life of the account; deleted or anonymised within 30 days of account cancellation
Device binding data (MAC, serial number, model)While the device is bound; deleted within 30 days of unbinding or account cancellation
Push identifiers (CID / FCM token)Deleted after 90 days of inactivity
Crash logs and diagnostics90 days
Support and feedback records2 years from the last interaction
Information we are legally required to retainFor the period required by applicable law; deleted or anonymised afterwards

When the retention period expires or the purpose of processing has been achieved, we delete or anonymise your personal information, except where mandatory retention is required by law.

Response times: you may submit requests relating to your personal information using the details in section 13. To protect your information, we may first need to verify your identity (usually by sending a verification link to your registered email address). We will respond within the period required by applicable law; where a request is complex, we may extend that period and will inform you of the reasons in advance.

9. Account Deletion and Data Erasure

You can request account deletion yourself under "Account Management → Delete Account" in the App, or by emailing support@ecowitt.com. Please unbind your devices first, or we will unbind them as part of the deletion process. We will complete the request within 30 days of receiving a valid request and will confirm the outcome to you.

After deletion we stop providing the service and delete or anonymise your personal information, except for what we are legally required to retain. Deletion means you will no longer be able to view your historical data, and it is irreversible.

If you only wish to remove a single device and its history, you can delete that device under "Device Settings". We will delete the corresponding data within 30 days; your account is unaffected.

10. Children

The App is not designed for or directed at children. We do not knowingly collect personal information from children under the following ages:

If you are a parent or guardian and believe we have collected a child's personal information without your consent, please contact us at support@ecowitt.com and we will delete the information after verification.

11. Managing Push and Consent

12. Changes to This Policy

We may update this Privacy Policy from time to time. When we do, we will revise the version number and last-updated date at the top of this page. If a change materially affects the purposes or means of processing or the categories of personal information processed, we will notify you in advance via an in-app pop-up or push notification and, where required by applicable law, seek your consent again. If you do not agree with the revised Policy, you may stop using the App and request deletion of your account.

13. Contact and Complaints

If you believe our processing of your personal information infringes applicable law, we would prefer that you contact us first so that we have the opportunity to resolve the matter.

This Policy is governed by the laws of the People's Republic of China. That choice of law does not exclude or limit the protection afforded to you by mandatory consumer protection or data protection laws of your country of habitual residence. Any dispute arising from this Policy shall first be resolved through negotiation; failing that, either party may bring an action in a court of competent jurisdiction.

© 2026 FINE OFFSET ELECTRONICS Co., Ltd. All rights reserved.