SketchForge Privacy Policy
SketchForgeLast updated: 3 September 2026
SketchForge is an Arduino-compatible IDE that compiles and uploads sketches directly on your Android phone. This policy explains exactly what the app collects, what it never collects, and where it connects.
In short
- There is no account and no sign-in.
- Your sketches stay on your phone. We never receive them.
- The app reports anonymous usage statistics and crash reports so we can fix problems and see which features people actually use.
- The app contains no advertising and does not collect an advertising identifier.
1. Who we are
SketchForge is made by an independent developer. It is not an official Arduino application and is not affiliated with Arduino SA; “Arduino” is a trademark of Arduino SA. You can reach us at the developer email address shown on the app’s Google Play listing.
2. What we collect
Released versions of the app include Google Analytics for Firebase and Firebase Crashlytics. Both describe what happened, never what it was about.
Usage statistics
- Which screens you open: Projects, Editor, Manager, Settings.
- Builds: started and finished, how long they took, how many errors and warnings, and what percentage of the board’s flash and RAM the result uses.
- Uploads: started and finished, the result, and the kind of failure when one happens.
- The board family and its identifier, for example
arduino:avr:uno, and the type of USB-to-serial chip on the board, for example CH340. - Serial monitor: that it was opened and at which baud rate; that a log or a chart was exported, and how many lines or series it held.
- Debugger: that a session started or stopped, and how many breakpoints and watch expressions it had.
- Assistant: which action was used, whether it ran on the phone or in the cloud, how long the answer took, and whether you applied it to your code.
- Libraries and AI models you install, by their catalogue identifiers.
- Settings you change, by setting name and new value.
- Standard technical information collected by Firebase: app version, device model, operating system version, language, country, and an app instance identifier that Firebase assigns to the installation.
Crash reports
When the app crashes or survives an internal error, we receive a stack trace, the state of the device at that moment, and a few diagnostic keys: the selected board identifier, the USB chip, and which assistant engine was active.
3. What we never collect
- The text of your sketches, or of any file you edit.
- The names of your projects and files.
- Anything printed by your board to the serial monitor.
- What you ask the assistant, and what it answers.
- API keys.
This is enforced in the code, not only in this document. Analytics events can carry numbers, true/false flags and identifiers from a fixed list; a test in our build fails if anyone adds free-form text to an event.
4. Advertising
The app has no advertising, no advertising SDKs, and no advertising profiles. Collection of the Android advertising identifier is switched off and the corresponding permissions are removed from the app.
5. Where the app connects
- Google Play — to deliver the ESP32 and ESP8266 compiler modules when you need them, and to report which listing the install came from.
- huggingface.co — to download an AI model, only when you choose to download one.
- The Arduino library index and the servers of library authors — to download libraries you choose to install.
- A cloud AI provider — only if you switch the assistant to cloud mode and enter your own API key.
6. The AI assistant
By default the assistant runs on your phone. The model file is downloaded once, and nothing you type leaves the device.
If you switch on cloud mode, you supply your own API key for the provider you choose. The request then goes straight from your phone to that provider — we do not receive it, route it or store it. What goes into the request is what the context chips on the assistant panel show before you send: the open file, compiler errors, the selected board. You can open any chip and read its exact contents first.
7. Your board
Compiling, uploading, the serial monitor, the plotter and the debugger all run on the phone and talk to the board over the USB cable. Nothing about the contents of your board leaves your device.
8. Permissions and why
- Internet and network state — the downloads listed above, and analytics.
- Notifications — progress and results of builds, uploads and model downloads.
- Foreground service — so a build or an upload keeps running when you leave the app; interrupting an upload can leave a board half-programmed.
- USB device access — granted by you per board through the Android dialog, so the app can talk to it.
9. Children
SketchForge is a development tool and is not directed at children under 13. We do not knowingly collect data from them.
10. Keeping and deleting data
Your sketches live in the app’s private storage on the phone and are removed when you uninstall the app.
Usage statistics and crash reports are held by Google on our behalf, under Google’s terms for Firebase. They are tied to the app instance identifier, not to you. If you want the data associated with your installation deleted, write to the developer email on our Google Play listing and tell us the app instance identifier from Settings → About, and we will request its deletion.
11. Legal basis and your rights
For people in the European Economic Area and the United Kingdom, we process usage and crash data on the basis of our legitimate interest in keeping the app working and improving it. You can ask us for a copy of the data associated with your installation, ask us to delete it, or object to the processing, at the contact address below.
12. Changes to this policy
If this policy changes, the date at the top changes with it, and anything material is called out in the app’s release notes on Google Play.
13. Contact
Write to the developer email address shown on the SketchForge listing on Google Play.
SketchForge is not an official Arduino product. “Arduino” is a trademark of Arduino SA.