Last updated: July 30, 2026
VGL Studio (“we”, “our”, or “us”) is committed to protecting your privacy. This Privacy Policy explains how we collect, use, and safeguard your information when you use the Scanly: QR Code Reader mobile application (“App”). The App is provided as a free, advertising-supported service.
The short version: scanning and code generation happen entirely on your device, and your scan history stays on your device. The data that does leave your device is limited to advertising and app-diagnostics information, described in detail below.
Scanly requests access to your device camera to detect QR codes and barcodes in real time.
Camera frames are analyzed entirely on your device using a barcode recognition model bundled inside the App. Frames are not uploaded, not transmitted to us, and not stored — they are discarded as soon as they have been analyzed. Scanning works with no internet connection at all.
Camera access is optional in the sense that the App remains usable without it: you can still decode codes from existing images and generate your own codes.
Scanly can decode a code from a picture you already have. When you choose this, your device’s photo picker opens and you select the specific image you want.
Because the App uses the system photo picker, it receives only the image you pick — it does not request broad access to your photo library and cannot browse, read, or collect any other file on your device. The selected image is decoded on your device and is not uploaded.
When you generate a code and choose to save it, the image is written to your device’s shared media storage (your gallery) at your request. On Android 9 and below this requires storage permission; on Android 10 and above no such permission is needed for images the App itself creates. We do not access, read, or collect any other files.
Scan history, favorites, the codes you generate, and any images you save are stored locally on your device. You own and control this content:
Your data is only on your device. The App deliberately disables Android’s automatic cloud backup and device-to-device transfer for its own data, so nothing about your scans is copied to any cloud account.
The consequence is important: if you change or reset your phone, or uninstall the App, your history and settings are gone. If you want to keep them, export your history to CSV first.
Scanly can copy the contents of a scanned or generated code to your clipboard, either automatically if you enable that setting, or when you tap Copy.
The App also reads your clipboard in one specific place: when you open the Create tab, it checks once whether your clipboard contains text, so it can offer you a shortcut to turn that text into a code. On Android 12 and later your system may show a brief “pasted from clipboard” notice when this happens. The clipboard text is used only to fill in that shortcut on your device — it is not stored by the App, not sent to us, and not shared with anyone. If you do not tap the shortcut, nothing is done with it.
Some QR codes contain Wi-Fi network details. When you ask Scanly to connect, the network name and password from that code are passed to Android’s own Wi-Fi service, which handles the connection.
We do not store, log, or transmit Wi-Fi credentials, and the App does not read information about the networks you are currently connected to.
The App asks for location access in exactly one situation: when you tap “Current location” while generating a code, so your coordinates can be placed inside the code you are creating.
Your coordinates are used only to build that code. They are not sent to us and not shared with third parties.
They are, however, part of the code you just created — and codes you create are saved to your local history by default, which means the history entry contains those coordinates. That entry lives only on your device, and you can turn history off or delete the entry at any time (see “Scan History and Your Content” above). If you never use the “Current location” feature, the App never requests your location; you can also decline the permission and continue using everything else.
Scanly has an optional feature that fetches the page title and description of a scanned web address so you can see where a link goes before opening it. This feature is turned off by default and only works if you turn it on in Settings.
When it is on, the App sends a request directly to the website contained in the scanned code, exactly as a browser would. That website’s server will therefore see your IP address and the address being requested. The request does not pass through any server of ours — we operate no backend and never receive the contents of your scans.
There is a separate optional setting that opens a web address immediately after scanning it. It is off by default. We recommend leaving it off: a code from an unknown source can lead to a malicious site, and opening links automatically removes your chance to check the address first.
When you open a web link, the App can display it using Android’s Custom Tabs, which runs your own browser inside the App. The page is handled by that browser and is subject to its privacy policy, not ours. You can turn this off in Settings to use your default browser instead.
The App requests internet and network-state access, which are needed for advertising, diagnostics, and the optional link preview. It also requests vibration permission for scan feedback; vibration is a local device function and produces no data.
The following information may be collected automatically while you use the App:
We do not collect personal information such as your name, email address, or phone number unless you provide it voluntarily — for example, by emailing us.
Importantly, the contents of the codes you scan or generate are not collected. They are not included in analytics events or crash reports.
The App displays advertisements through Google AdMob and its mediation partners. These services may use device identifiers, your Advertising ID, and your IP address to serve advertisements, including personalized advertisements based on your interests. Your IP address may be used by these services to estimate your approximate, city-level location for advertising purposes.
If you are in a region that requires it, you will be asked for consent before personalized advertising is used, and you can change your choice at any time through Settings › Manage privacy inside the App.
You can also opt out of personalized advertising, or reset your Advertising ID, in your device settings. For more information on how Google uses data, see Google’s Privacy Policy.
We use Google Analytics for Firebase to understand how the App is used, and Firebase Crashlytics to receive crash and stability reports. These collect device identifiers, in-app events, and diagnostic data. The information is used in aggregate to improve the App and is governed by Google’s privacy policy. We do not use these services to identify you.
Each of these services has its own privacy policy governing its use of information.
Analytics and crash data are retained according to the retention policies of the Firebase services listed above. Everything else — your history, favorites, generated codes, and settings — remains on your device for as long as you keep it there, and disappears when you delete it or uninstall the App.
The App is not directed to children under the age of 13, and we do not knowingly collect personal information from children. If you believe we have inadvertently done so, please contact us so we can promptly delete it.
Data transmitted by the App — advertising requests, analytics, crash reports, and the optional link preview — is sent over encrypted HTTPS connections. We apply standard security measures to protect information from unauthorized access, alteration, disclosure, or destruction. No method of transmission or storage is completely secure, and we cannot guarantee absolute security.
We may update this Privacy Policy from time to time. Changes will be reflected on this page with an updated “Last updated” date. We encourage you to review this policy periodically.
If you have any questions or concerns about this Privacy Policy, please contact us at: vgldream01@gmail.com