Privacy Policy
Summary
Thread Doctor has no backend. The developer does not collect, store, process, or have access to any of your data. There is no analytics. There is no telemetry. There are no third-party SDKs that phone home.
The only outbound network traffic Thread Doctor makes:
- Local-network discovery on your LAN.
- Matter cluster reads and, only when you explicitly apply a configuration change or use a device action, a write or command to that accessory via Apple's
homeddaemon. - Only when you explicitly tap "Analyze network" — a request to the LLM provider you configured, using your own API key.
What stays on your device
- HomeKit accessory list — cached by Apple's HomeKit framework and read locally while Thread Doctor is running to locate your paired accessories.
- Thread mesh scan results — up to 20 most recent scans, stored in the app's Documents folder. You can delete them anytime via Topology → History → Clear all, or by uninstalling the app.
- Your LLM API key — stored in iOS Keychain with the
kSecAttrAccessibleWhenUnlockedThisDeviceOnlyattribute. The key is encrypted at rest behind your device passcode, never synced to iCloud, never exfiltrated. - Provider preference — your selected LLM provider (Anthropic / OpenAI / Google) and model name in
UserDefaults.
Outbound network traffic
While the app is open (foreground only)
- mDNS / Bonjour browsing on your local network. Thread Doctor browses
_matter._tcp,_matterc._udp, and_meshcop._udpservice types to discover Matter devices and Thread Border Routers, plus_airplay._tcpand_companion-link._tcpto recognize which Apple device (HomePod or Apple TV) a Border Router is and read its firmware version. This traffic never leaves your LAN. iOS requires your explicit permission for this (the Local Network prompt on first launch). - Matter communication with accessories paired into your Apple Home. Reads collect the diagnostic and configuration values shown in the app. When you explicitly apply a setting in a device's Configuration section, Thread Doctor writes the selected supported Matter attribute or sends the corresponding Matter command, then reads the value back from the accessory. Force Sync sends the current time, Set Time Zone sends the time zone you choose, and Identify asks the accessory to identify itself for a few seconds. All of this communication goes through Apple's
homeddaemon over your existing Apple Home connection. Thread Doctor never bypasses iOS, never makes its own direct connection to an accessory, and never changes device settings automatically or in the background.
Only when you tap "Analyze network"
Thread Doctor sends a JSON snapshot of your scanned mesh to the API endpoint of your chosen LLM provider over HTTPS. The exact payload is visible in the "Preview outbound payload" sheet before you send it — Thread Doctor adds nothing else.
The data is authenticated with the API key you entered. The developer of Thread Doctor does not have, see, or proxy this request. Once data leaves your device it is governed by your chosen provider's privacy policy:
Third parties
- Apple — HomeKit framework, Matter framework, iOS system services. Governed by your iOS settings and Apple's privacy policy.
- Anthropic — only if you select them as your LLM provider and supply an API key. Processes your "Analyze network" requests.
- OpenAI — only if you select them as your LLM provider and supply an API key. Processes your "Analyze network" requests.
- Google — only if you select Google (Gemini) as your LLM provider and supply an API key. Processes your "Analyze network" requests.
- Cloudflare — hosts this marketing website. The app itself does not connect to Cloudflare. Standard Cloudflare web request logs (IP, user-agent, timestamp) apply to visitors of this site, retained per Cloudflare's policy.
Tracking and analytics
None. Thread Doctor contains no analytics SDKs, no crash reporting beyond Apple's optional system-level crash reporting (which you can disable in iOS Settings → Privacy & Security → Analytics & Improvements), no advertising identifiers, no fingerprinting.
Install attribution (SKAdNetwork). If you installed via an ad, iOS — not the app — may send Apple's anonymous postback to the ad network: a campaign ID only, no user or device identifiers. Thread Doctor has no ad SDK and never sees this data.
Children
Thread Doctor is rated 4+ on the App Store and is suitable for all ages. The app collects no personal information from anyone — including children — so no parental consent is required and there is no children's data to manage under COPPA or similar laws.
GDPR / CCPA / data-subject rights
The developer of Thread Doctor does not collect or process any personal data, so the rights granted by GDPR (access, rectification, erasure, etc.) and CCPA have no data for the developer to action. The data you generate by using Thread Doctor lives either on your iPhone (which you fully control via iOS) or at your chosen LLM provider (please contact them directly).
Changes to this policy
If anything material changes, the updated policy will be posted here and the "Last updated" date will be bumped. Substantial changes will also be noted in the app's release notes.
Contact
Questions about privacy? Email support@threaddoctor.app.