The short version: Free AI Wiper cleans supported files and text locally in the browser and native apps. These local cleaners do not upload selected content to our servers. The separate customer API uploads files for server-side processing. Account, installation, purchase and diagnostic data are described below.
Who is responsible?
The data controller is Mahdi Hezaveh IT Consulting. You can contact us about privacy at [email protected] or by using the postal address in our Impressum.
Files and text you process
The browser and native image, document, video, audio and text cleaners run on your device. They read selected content, perform the available checks and cleaning locally, and let you save or copy the result. We do not receive, store or inspect that content through these local features. Your browser and device control the copies you keep.
When you choose the separate authenticated customer API, we receive and temporarily store uploaded files and processed results with our storage provider. Workers process the files on the server. We record job identifiers, account/API-key associations, format, sizes, status and processing times to deliver results, enforce credits and troubleshoot failures. Results expire and scheduled cleanup removes inputs, expired outputs and job records; failed deletions are retried. This server processing is separate from native and browser-local cleaning.
Account and email data
An account is optional for the basic cleaner. If you register, we store your email address, a display name and the status of your email verification. If you set a password, we store its hash. We use these details to provide and secure your account, send verification and password-reset emails, and respond to account requests. The legal basis is Article 6(1)(b) GDPR, where processing is needed to provide the account, and Article 6(1)(f) GDPR for account security and misuse prevention.
An email address is necessary to create an account. You can use a password or, when available, Google sign-in; without them, you can still use features that do not require sign-in. We do not use account emails for marketing in the current app.
If you choose Google sign-in, Google provides your account identifier, name, email address and email-verification information. We store the Google identifier to link sign-ins to your account, together with your name, email and verification status. We do not store Google access or refresh tokens or request access to your Gmail or Drive files. Google processes the sign-in under its privacy policy. Google-only accounts do not require a password; we send email links for setting a password and confirming account deletion.
During password-based registration, we send your email address to EasyEmailAPI to check its validity, domain mail records and whether it belongs to a disposable email provider. Validation results may be cached for up to 24 hours to avoid repeated checks. Your password and files selected for cleaning are not sent to this service.
If you email us, we process your address and message to answer you. The legal basis is Article 6(1)(f) GDPR, our legitimate interest in handling inquiries, or Article 6(1)(b) GDPR when your message concerns your account.
Purchases and support
For an in-app purchase or restoration, the mobile app sends the store purchase reference to our backend. We verify it with Google Play or Apple, as applicable, and associate the subscription with your account. We send a pseudonymous billing account identifier to the store and store product and transaction references, purchase tokens, verification and acknowledgement status, subscription dates and renewal/cancellation information. Store notifications update these records. The store processes payment-card details; the app does not receive them. Subscription records are removed with the account; store notification references currently have no automatic expiry.
When you choose account-aware support, we pass your name and email to our Empinet support portal in a signed link valid for ten minutes. Mobile support also includes your account ID, plan, platform, operating system and app version. The signature prevents tampering; it does not encrypt these details. Support receives the messages and any attachments you choose to send. Files selected for local cleaning are not automatically attached.
Website requests, logs and cookies
When you visit Free AI Wiper, the web server and hosting provider receive technical request data such as your IP address, browser information, requested page and time of access. Technical logs may be kept to operate the site, investigate errors and protect it from abuse. The legal basis is Article 6(1)(f) GDPR, our legitimate interest in a secure and reliable service.
The site uses essential session and security cookies for sign-in, form protection and, if you choose it, remembering your login. These are needed to provide the functions you request; they are not advertising cookies. Access to or storage on your device for these essential functions falls under § 25(2) TDDDG. Related personal-data processing relies on Article 6(1)(b) or 6(1)(f) GDPR, depending on the function.
The language preference cookie remembers the language you choose for up to one year. You can change it using the language selector or remove it in your browser. It is used to provide your selected interface language, not for advertising.
Tool usage and credits
When a clean successfully changes a result, your browser sends us the tool category and a random request ID. The server records the time, your account ID if you have a verified account, or a random visitor ID kept in a first-party cookie, plus the request IP address. We use these records to apply the daily or weekly credit limit and count use of each tool. Inspections, failed cleans and unchanged results are not recorded as tool use. We do not receive the file, filename or text being cleaned.
The visitor cookie lasts for 30 days and is used to apply the daily visitor limit. We remove IP addresses and visitor IDs from usage records after 30 days; the tool category and time remain for aggregate reporting. Account IDs are removed from usage records when an account is deleted. Country may come from trusted Cloudflare headers. To fill missing approximate region and city details, a scheduled server process sends public IP addresses to FreeIPAPI; no account identifiers or file content are sent. We rely on Article 6(1)(b) GDPR to provide account credits and Article 6(1)(f) GDPR for visitor limits and basic aggregate service measurement.
Native app versions with batch usage reporting save a random visitor UUID once per installation and queue a record after a successful cleanup changes a result. Records contain a random event ID, mobile or desktop platform, cleaner category and UTC date; they contain no files, filenames, paths, text or findings. The app sends batches on opening or returning to the foreground and checks for pending batches once a minute while running. Signed-out reports use the visitor UUID. Verified signed-in reports use the account authenticated by an access token with the reporting permission; older sessions need a new sign-in to grant that permission. Queued events retain their original account or guest association after sign-out or account switching. Normal account requests handle token refresh separately; reporting does not change paid access. The local queue retains up to seven days and 10,000 events; acknowledged events are removed, and expired, overflowed or explicitly rejected records increase a local diagnostic discard count. The installation UUID survives launches, updates and sign-out; deleting app data may reset it. The server records the connection IP and available approximate location at sync time. Native reporting measures use, while native Free limits remain enforced on the device. The server applies guest recording limits and deduplicates event IDs, so these delayed self-reported figures are not a complete or independently verified activity history. The usage-record retention and deletion rules below also apply to accepted native records.
Account access profiles
For successful authenticated requests on the website, mobile and desktop, we keep one access profile per account and IP address, with first and most recent access times and approximate country, region and city. Recent access times are updated at most once every five minutes per account/IP. Country may come from trusted Cloudflare headers. A scheduled process sends public IPs to FreeIPAPI to fill missing location details; it does not send your account ID, email, device identifier or files. Complete lookup results may be cached for 30 days. IP-based locations can be inaccurate, especially with VPNs or shared networks; we do not request GPS or device location permissions. Profiles are retained while the account exists and removed when it is deleted. They are separate from installation and cleaning records.
Mobile and desktop installation reporting
For guest and signed-in check-ins, the server also stores the latest connection IP and approximate country, region and city on the installation record. Trusted Cloudflare headers may provide the country. A scheduled process sends only public IPs to FreeIPAPI to fill missing details, sharing cached results for up to 30 days. A changed IP clears the previous region and city until resolved. This is the last network seen, not a home address; VPNs and shared networks can make it inaccurate. We do not request GPS access.
When the mobile app opens, it can send an app-open check-in with its platform-provided device identifier (Apple vendor ID or Android ID), app version/build, operating system version/build, manufacturer, brand, model and CPU architecture where available. The shared API also accepts desktop reports using a randomly generated app installation ID. Ordinary reports are attempted at most once per 24 hours of use; login and app-version/build changes can trigger another report. Files continue to be cleaned locally.
We use these records to understand approximate installation counts, recent activity, device compatibility and app-version distribution. We store the first and latest check-in times and, when authenticated, the last account ID and authenticated check-in time. Signing out does not erase that last association; guest check-ins never advance account activity. Deleting an account removes its association from the installation record. Installation records currently have no automatic expiry.
These installation payloads contain no files, filenames, individual cleaning events or location fields. Authenticated requests also update the separate account access profiles described above. They do not collect device names, hardware serial numbers, IMEI, MAC addresses or advertising identifiers. Platform identifiers can reset; desktop app data removal can create a new ID. Reporting failures do not prevent otherwise permitted local cleaning. Normal technical request logs described above still apply.
Website analytics
We keep valid campaign tags (UTM source, medium, campaign, content and search term) from tagged guest visits in the existing browsing session. At new email or Google registration, we save the latest tagged campaign on the account to measure registrations by campaign. Untagged registrations remain empty; later sign-ins do not overwrite it. These data are deleted with the account.
The production website uses Google Analytics 4 to measure visits and website usage. Google's tag loads when you visit the site and may use analytics cookies to distinguish visitors and sessions. Google receives technical information about your browser and device, page visits and interactions. We do not send the files or text you select for cleaning, your account email address or your display name as analytics event data. For more information about Google's processing, see Google's privacy policy.
Website and mobile error reporting
When enabled in production, the website uses hosted Sentry to report unexpected application errors. Browser reports contain exception types, reduced stack locations, app release and environment. Laravel server reports and server-rendering failures use similarly reduced diagnostics. Raw error messages, file contents and names, account and device identifiers, request bodies, cookies, authorization headers, arbitrary context, source snippets and local variables are removed from these reports. We do not enable Sentry session replay, performance tracing, profiling, session tracking, breadcrumbs, logs or metrics for this feature. It does not report individual cleanups or app-open analytics.
Release builds of the mobile app also use Sentry when a reporting endpoint is configured. Reports contain filtered exception types and stack locations, release/build and environment, device model/manufacturer/architecture, and operating-system and app versions/builds. Raw exception messages are replaced; file contents, full local paths, account/device identifiers, request bodies, cookies and authorization headers are excluded from the filtered application reports. Screenshots, view hierarchies, session replay, automatic session tracking, performance tracing and breadcrumbs are disabled. This diagnostic reporting is separate from installation check-ins.
Repeated errors are suppressed and reporting is limited to reduce unnecessary transmission. Reporting is off in development and when no reporting endpoint is configured. Reporting failures do not prevent local cleaning. Sentry and its infrastructure receive the technical network data needed to accept reports, such as the connection IP address; this is separate from the application data we remove. Reports are retained according to the Sentry project's retention settings and may be processed by Sentry as a service provider. For details, see Sentry's privacy policy. The service-provider, transfer and rights provisions below also apply.
Service providers and transfers
Providers that host the app or deliver account emails may process the technical or account data needed for those services on our behalf. We do not sell your personal data or send files selected for local cleaning to these providers. We may disclose data when legally required.
If a provider processes personal data outside the European Economic Area, we use a valid GDPR transfer mechanism, such as an adequacy decision or standard contractual clauses. You can ask us for information about the providers and applicable safeguards at [email protected].
Account and data deletion
To request deletion of your Free AI Wiper account and associated personal data, email [email protected] from your registered email address. You can make this request without installing the app. We verify account ownership before acting on a request.
You can also sign in on our website, open Account, then Security, and use the account deletion option. If an ongoing subscription prevents deletion, cancel renewal with the provider and contact support for help. Deleting an account does not itself cancel a Google Play or Apple subscription; manage renewal with the store separately.
Account deletion removes the account, access profiles and associated store-subscription records, and unlinks installation and tool-usage records. Installation identifiers and store-notification references are not automatically erased by that action; include associated-data deletion in your request so we can review those records and any data held by service providers. Records needed for legal obligations or necessary legal claims may be retained as described below.
How long data is kept
We keep account data while your account exists and delete it on a verified deletion request, unless a legal obligation or a necessary legal claim requires longer retention. Password-reset links are valid for 60 minutes; used or expired tokens are removed through the account system's cleanup process. Session data expires according to the site's session settings. Technical logs and support messages are kept only as long as needed for security, troubleshooting or answering the request, subject to any legal retention duty.
Your rights
Subject to the GDPR's conditions, you can request access, correction, deletion, restriction or portability of your personal data, and object to processing based on legitimate interests. Contact [email protected] to make a request. You can also complain to a data protection authority, including the North Rhine-Westphalia supervisory authority.
We do not use account data for automated decisions or profiling with legal or similarly significant effects.
Changes to this policy
We will update this page when the app's data practices change and show the current date above. Material changes affecting account holders will also be communicated through the service or by email where appropriate.