Privacy Policy
Harulook
Effective Date: August 15, 2026Correction and advance notice: transaction-record retention
Correction and notice date: October 26, 2026 · Planned effective date of the new retention and deletion rules: November 3, 2026
Correction of the current notice: Our previous statement that usage and billing records were retained only until one day after the billing period ended did not match the actual payment and credit-ledger processing. These records are not all automatically deleted the next day. Records used to verify purchases, grant, debit, restore or refund credits, and prevent duplicate grants remain. We are correcting that inaccurate retention statement. This notice does not mean that the new automated deletion has already started or that all past records have been cleared.
Rules planned for November 3: We will retain the minimum transaction records needed to verify contracts, withdrawal, payment and service delivery for five years after the relevant transaction ends. These include transaction identifiers, products, billing and service periods, credit grants, use, restoration and refunds, and processing times. The legal basis is Article 6 of Korea's Act on Consumer Protection in Electronic Commerce and Articles 6(1)(2) and 6(1)(3) of its Enforcement Decree.
- How the period is calculated: The five years run from the latest relevant billing or service-period end, credit expiry, or completion of an actual grant, use, refund or dispute process. A purchase-restoration check, status lookup or account unlinking during account deletion alone does not restart the period. Existing records with no verifiable end or last-processing date use November 3, 2026, the introduction date of these rules, as the starting point.
- Protecting rights and deleting records: Records needed to protect valid unused credits, a generation in progress, undelivered benefits of an active subscription or annual contract, a pending refund or dispute, or linked restoration credits are preserved until that right or case ends. Once the protection no longer applies and retention has expired, unnecessary transaction details and duplicate-grant prevention identifiers and hashes are removed. Legally retained records after account deletion are managed separately from ordinary account data. Hashing does not by itself make the records anonymous.
- No extension for photos or inquiries: These rules apply to transaction ledgers. Support photos remain subject to 30 days and inquiry text and conversations to 90 days; they are not copied into the ledger for five-year retention. The statutory three-year period for consumer complaint or dispute-processing records under Article 6(1)(4) of the same Decree is a separate category. It does not extend every ordinary inquiry to three or five years.
- Advance notice: We maintain at least seven days' advance notice under the existing policy. Expiry cleanup under the new rules will not apply before both November 3, 2026 and seven days after advance notice through an in-app notice or push notification. Implementation status or schedule changes will be announced on this page.
Additional notice: fashion try-on support
Notice date: October 8, 2026 · Planned effective date: October 15, 2026
New support submissions for general users are currently disabled. This notice applies after the retention and disposal rules for credit-processing records are finalized and announced, support is enabled on or after the planned effective date, and you choose to submit an inquiry or review photos. Submissions do not open automatically on that date. Separately authorized operator testing also presents these processing details and obtains optional photo consent before any photo submission.
- Data and purpose: We process your account identifier, links to the relevant generation and credit transaction, issue category, description, follow-up replies, status and processing times to provide customer support, review output quality, restore generation credits and prevent duplicate restoration.
- Separate, optional photo consent: We upload only the review copies you select from the input-person photo, selected clothing photo and generated result linked to that generation. New wardrobe try-ons can link up to four selected garment photos for support review; older generations may have only the first item available. Support does not retrieve, prepare or transmit comparison photos from your device before consent, and does not alter the originals. Even though generation inputs are not retained as part of the generation process, the copies you choose to submit to support are retained separately as described below.
- Declining or withdrawing: You may submit a text-only inquiry without photo consent, and your basic service access is unaffected. Without before-and-after photos, we may be unable to determine whether a quality issue qualifies for credit restoration. You may request deletion or suspension of processing of submitted photos by emailing the privacy officer below.
- Access and service provider: Inquiries and photos are linked to your account and generation in Supabase's private storage and database in Seoul, Republic of Korea (ap-northeast-2). Request handling, authentication and other function processing, support and security operations may occur outside that storage region. You can view your own inquiry; review is performed by Harulook support staff with separately assigned access. Photo-viewing links last no more than five minutes and never extend beyond the photo retention deadline. This support process does not send photos or inquiries back to a generative AI provider or use them for advertising or model training. See sections 6 and 7 for Supabase's processing and international-transfer scope.
- Photo and inquiry retention: Photos are scheduled for deletion 30 days after inquiry creation; descriptions, conversations and processing history after 90 days. Follow-up replies or attachments do not extend these periods. No new photo-viewing links are issued after expiry. Actual deletion may be delayed by the five-minute cleanup schedule and storage responses. Account deletion also schedules support inquiries and photos for deletion; uploads already in progress that finish later are cleaned up again.
- Minimal credit-processing records: After inquiry or account deletion, credit-transaction links, hashes of the generation, reviewer and decision note, and processing times remain with the existing credit ledger to prevent duplicate restoration and handle reversals of the original transaction. This ledger contains no photos or inquiry text. Hashing is not treated as making all such information anonymous. The transaction-retention notice explains the current correction and the rules planned for November 3, 2026.
1 Introduction
"Harulook" (hereinafter referred to as the "App") values the privacy of its users and complies with applicable privacy laws and regulations, including the Korean Personal Information Protection Act (PIPA). This Privacy Policy describes the types of personal information we collect, the purposes for which we use it, how long we retain it, and the rights available to you regarding your information.
2 Information We Collect
| Information | Purpose | Collection Method |
|---|---|---|
| Anonymous authentication identifier (UUID) | User identification and personalization settings | Issued anonymously by Supabase Auth on first launch |
| Optional sign-in information (email address, display name, and Google or Apple account identifier) | Account creation and authentication, saved-data sync, and account recovery | Received from Google or Apple when the user chooses to sign in |
| Location Data (latitude/longitude) | Weather-based outfit recommendations | Collected with user consent and sent through Cloudflare to WeatherAPI (in Korea, also looked up from the Korea Meteorological Administration API as a ~5 km grid cell) |
| Location-use confirmation record (anonymous UUID, time, purpose, path, method, and processors; no coordinates) | Statutory location-use recordkeeping and user rights | Automatically generated when current location is used for weather |
| Push Notification Permission | Weather alerts and outfit recommendation notifications | Enabled with user consent |
| Calendar Access | Viewing today's schedule and supporting on-device outfit suggestions | Accessed on device with user consent |
| Profile data (gender selected during current registration and any previously supplied age group, birth month/day, height, body type, and preferred styles) and saved locations on device (up to two by default or five with Plus) | Personalized outfit recommendations | Directly provided by user |
| Age 18+ confirmation and consent records (version and timestamp) | Eligibility confirmation and consent record management | Generated when the user confirms and agrees |
| Fashion try-on (Pro and credits): the photo of yourself and garment photos you choose, the generated image, the age 18+ confirmation record (version and time), and the photo-transfer consent version | Generating AI try-on images, delivering results, usage and billing settlement, age confirmation | The selected photo of yourself and garment photos are sent to the Meta Model API after the 18+ confirmation and Meta Muse photo-transfer consent when you request a generation. Harulook handles input photos in server memory during the request and does not keep them in its database or file storage. Results are kept in private server storage for 7 days, then access is blocked and a cleanup job deletes them. A photo of yourself that you choose to save stays on this device only |
| Outfit weather coach: the clothing photo you choose, a photo hash, and the analyzed clothing attributes | Checking whether the chosen outfit suits today's and tomorrow's weather | Sent to the Google Gemini API after photo-transfer consent when you request an analysis. Harulook does not store the original photo; clothing attributes are kept for 7 days |
| Wardrobe garment analysis: the clothing or accessory photo you choose, a photo hash, and the analyzed item attributes | Extracting category, color, silhouette, and design attributes for wardrobe registration | Sent to OpenRouter (Qwen model API) after photo-transfer consent when you request an analysis. Harulook does not store the original photo on its servers; the server analysis cache expires after 30 days and is deleted through cleanup (see Section 4). Wardrobe originals, cutouts and garment details on this device remain until you delete them |
| Photo Library access and the Harulook Wallpapers and Harulook watch photo albums | Saving a selected outfit as an iPhone wallpaper, or showing saved outfits and try-on results on an Apple Watch Photos face (Plus) | Permission is requested when you turn the feature on. The App keeps a dedicated on-device album equal to your saved list (up to the latest 100). Photos that leave the list are never deleted automatically, and no photo is sent to our servers for this |
| My Photos (private fashion photo gallery): device photo list authorized by the user and on-device classification and manual include/exclude records | Classifying and browsing outfit and fashion photos on device from your photo library | Classified on device (Apple Vision on iOS, ML Kit on Android) when you grant access or pick photos; original photos, EXIF, and classification results are never sent to Harulook servers, and only asset identifiers and classification state are stored on device (standard SDK diagnostics and usage statistics by Android ML Kit follow Google's policy) |
| Report and block records | Handling inappropriate content and protecting users | Generated when report or block features are used |
| Usage Data (likes, saves, view history) | Recommendation algorithm improvement and service quality enhancement | Automatically collected during service use |
| Advertising identifiers and ad interaction data | Rewarded ad delivery, ad performance measurement, and fraud prevention | Processed through the Google AdMob SDK |
| Subscription identifiers (anonymous app user UUID, product ID, purchase and restore status, expiration date, and renewal status) | Harulook Plus and Pro subscription and fashion try-on credit purchase verification, entitlement delivery, purchase restoration, and fraud prevention | Processed through RevenueCat and the applicable app marketplace when a subscription is purchased or restored |
| Minimal error diagnostics (error type, hashed fingerprint, app version, and operating system; no error message) | Detecting launch failures and improving app stability | Generated only after a fatal app error; photos, location, email, and user-entered content are not collected |
3 How We Use Your Information
- Providing weather-based personalized outfit recommendations
- Creating and authenticating optional accounts, syncing saved data, and account recovery
- Delivering personalized content based on user profiles
- Sending push notifications for weather changes and outfit suggestions
- Saving a selected outfit as an iPhone wallpaper or showing it on an Apple Watch Photos face
- Providing the AI fashion try-on, outfit weather coach, and wardrobe garment analyses you request
- Handling outfit photo reports and protecting users
- Analyzing usage statistics and improving service quality
- Improving app stability through minimal diagnostics that exclude personal content
- Providing rewarded ads and measuring ad performance
- Responding to user inquiries and providing customer support
4 Data Retention and Deletion
Retention Period
We retain personal information for the duration of your use of the App. Locally stored data (AsyncStorage) is removed when the App is deleted. Server data for guests is keyed to an anonymous identifier (UUID). If you choose to sign in, the email address, display name, and account identifier supplied by your provider are linked to your Supabase Auth account. You may delete the account and related data through Delete All My Data or by email request, and we will destroy unnecessary data without undue delay. Minimum payment and credit-processing records are an exception; see the current correction and planned retention rules. Error diagnostics are limited to five records per account per day and deleted within 30 days. Location-use confirmation records required by Article 16(2) of Korea's Location Information Act exclude coordinates and are retained for six months before deletion.
Deletion Methods
- Electronic files are permanently deleted using methods that prevent recovery.
- Exact coordinates are not stored in Harulook's database or relay cache. They are stored on device only when weather alerts are enabled and are removed when alerts are disabled, through in-app data deletion, or when the App is deleted.
- Location-use confirmation records contain no coordinates and are deleted after six months.
- Calendar data is used only to display schedules and support on-device outfit suggestions, and is not stored on our servers.
- Harulook Wallpapers and Harulook watch photos are stored in the on-device photo library and are never deleted automatically by the App. You can revoke Photos access or delete the images or albums directly.
- Fashion try-on: Harulook handles input photos in server memory during generation and does not retain them as part of that process. Separately submitted support copies follow the additional support notice above. Server results are blocked after 7 days and removed by a cleanup job. Results saved in the App or Photos stay on the device until you delete them. Payment and credit-processing records remain separately from photos. See the correction of the previous retention statement and the rules planned for November 3, 2026.
- Outfit weather coach: Harulook does not store the original photo, and analyzed clothing attributes are deleted after 7 days. Deleting your account also deletes related records.
- Wardrobe garment analysis: Harulook does not store the original photo on its servers. Server analysis caches and request records expire or become eligible for deletion after 30 days; expired caches are not reused. Cleanup runs on an hourly schedule and during subsequent requests, so actual deletion may be delayed by scheduler availability and server responses. On-device wardrobe photos, cutouts and garment details remain until you delete them. Account deletion also marks on-device wardrobe items and server analysis records for deletion.
- Meta Muse fashion try-on uses Standard Services. Meta states that it does not use this content to train Meta models, but may process and retain it to provide services, comply with law, and review safety, security, abuse and policy violations. Provider retention is separate from Harulook's input and 7-day result policies. See Meta's data commitments and service terms.
- Processing and retention by Google for the outfit weather coach follow Google's terms. The paid Gemini API states that inputs and outputs are not used to improve models, but they may be logged for a limited period for safety and abuse detection.
- Wardrobe garment analysis requests via OpenRouter are sent with data collection and model training disabled (`data_collection: deny`). Safety, abuse-prevention logging, and retention by OpenRouter and its inference infrastructure follow the OpenRouter Privacy Policy.
5 Sharing Your Information with Third Parties
We do not share your personal information with third parties except in the following circumstances:
- When you have given prior consent
- When required by law or requested by law enforcement authorities through proper legal procedures
6 Service Providers
| Provider | Purpose |
|---|---|
| Supabase Inc. | Anonymous and member authentication, Seoul-region cloud database, private user file storage, optional fashion try-on support inquiries and review photos, support, and security operations |
| WeatherAPI.com (Zoomash Ltd) | Weather information retrieval based on location coordinates |
| Cloudflare, Inc. | Weather request relay, transport security, abuse rate limiting, and public outfit-image delivery through R2 |
| Google AdMob / Google LLC | Optional Google account authentication, rewarded ad delivery, ad performance measurement, ad quality, and fraud prevention |
| Meta Platforms, Inc. (Meta Model API / Muse Image) | Fashion try-on image generation that you request after separate photo-transfer consent |
| Google LLC (Gemini API) | Outfit weather coach photo analysis that you request |
| OpenRouter, Inc. (Qwen model API) | Wardrobe garment and accessory attribute analysis that you request after separate photo-transfer consent |
| Apple Inc. | Optional Apple account authentication |
| RevenueCat, Inc. | In-app subscription verification, entitlement synchronization, purchase restoration, and subscription status management |
| Expo (650 Industries, Inc.) | Delivery of remote push notifications such as weather-change alerts (relayed through Apple and Google push services) |
We ensure that our service providers comply with applicable privacy regulations through contractual agreements.
7 International Data Transfers
The Supabase project's primary database is hosted in the verified Seoul, Republic of Korea (ap-northeast-2) region. International processing may still occur for support and security operations, weather retrieval, image delivery, and advertising. The transfer basis is processing or storage necessary to perform the service contract under Article 28-8(1)(3) of Korea's PIPA; separate consent is obtained in the App where required.
| Recipient / Countries | Data and Purpose | Timing, Method, and Retention |
|---|---|---|
| Supabase Inc. and its published subprocessors United States and countries hosting service or support facilities (primary storage: Seoul, Republic of Korea) Contact: support@supabase.com |
Anonymous or member UUID, optional sign-in email and display name, profile, usage, consent and location-use records, user-upload information, optional support review photos and inquiries, and credit-restoration links, push token and 5 km weather grid for remote alerts, and for Apple sign-in members an encrypted token used only to remove the Apple sign-in link when the account is deleted / database, authentication, support, and security operations | Encrypted transfer during service, support, or security processing / service term or the disclosed retention period for each category |
| WeatherAPI.com (Zoomash Ltd) United Kingdom and service operation countries including the U.S., Japan, China, and India Contact: www.weatherapi.com (contact form) |
Latitude and longitude / weather retrieval | Encrypted transfer at each weather request / as required to provide the service and under the provider's retention policy |
| Cloudflare, Inc. United States and countries where Cloudflare operates its network Contact: privacyquestions@cloudflare.com |
Latitude, longitude, IP address, and request metadata / weather request relay, transport security, abuse rate limiting, and public outfit-image delivery | Encrypted transfer during weather or image requests / as required to provide the service and under Cloudflare's applicable retention policies |
| Google LLC United States and countries where Google operates data centers Contact: policies.google.com/privacy |
When sign-in is selected: email, display name, and Google account identifier; for ads: advertising identifier, device and network information, and interactions; for remote alerts on Android: FCM registration token and Firebase installation ID; for the outfit weather coach: the photos you choose / authentication, non-personalized rewarded ads, measurement, fraud prevention, push delivery, and AI photo analysis (Gemini API) | Encrypted transfer during Google sign-in, an ad request, alert registration, or an analysis request / under Google's retention policy or until a valid deletion request (the Gemini API may log for a limited period for safety and abuse detection) |
| Meta Platforms, Inc. (Meta Model API) United States and countries where Meta operates its data centers and services Contact: Meta Model API account support |
Your selected person and clothing photos, generation instructions and output image / requested fashion try-on generation and delivery, and provider safety and abuse prevention | Encrypted transfer at generation after separate photo-transfer consent / as needed under section 4.4 of Meta's terms for service, legal, safety, abuse and policy review purposes. Separate from Harulook's input and 7-day result policies |
| OpenRouter, Inc. and inference infrastructure providers United States and service operation countries Contact: privacy@openrouter.ai (Privacy Policy) |
Your selected clothing or accessory photo and analysis instructions after separate consent / wardrobe garment attribute analysis (Qwen model) | Encrypted transfer upon analysis request (`data_collection: deny`) / Harulook does not retain the original photo; its server analysis cache expires after 30 days and is deleted through cleanup (see Section 4). Provider processing follows the OpenRouter policy |
| Apple Inc. United States and countries where Apple operates its services Contact: apple.com/legal/privacy/contact |
When sign-in is selected: email (or private relay address), display name, and Apple account identifier; for remote alerts on iPhone: APNs device token / authentication and push delivery | Encrypted transfer during Apple sign-in or alert registration / under Apple's retention policy or until a valid deletion request |
| RevenueCat, Inc. United States and countries used by its published subprocessors Contact: support@revenuecat.com |
Anonymous app user UUID, product ID, purchase and restore status, expiration date, and renewal status / subscription verification, entitlement delivery, restoration, and fraud prevention | Encrypted transfer during subscription purchase, restoration, or status checks / until subscription and legal retention obligations end, subject to RevenueCat policy or a valid deletion request |
| Expo (650 Industries, Inc.) United States Contact: privacy@expo.dev |
Expo push token and alert content (weather-change notices) / remote push delivery | Encrypted transfer when an alert is sent / as needed for delivery and under Expo's policy (the token is unregistered when alerts are turned off or the account is deleted) |
You may deny location permission or change available choices under Advertising Privacy Settings. If location is denied, recommendations use a city you choose manually. If no saved city is available, weather-based recommendations remain unavailable until you select one. If advertising processing is denied, rewarded additional outfits may be unavailable. To refuse international processing that is essential to providing the service, delete your App data and discontinue use.
8 Your Rights (Korea, Japan, U.S., Canada, Australia)
Depending on your jurisdiction (including Korea under PIPA, Japan under APPI, U.S. states such as California under the CCPA/CPRA, Canada under PIPEDA, and Australia under the Privacy Act 1988), you have the right to:
- Know, access, correct, port, or delete your personal information
- Request suspension of personal information processing or withdraw consent
- Revoke location and notification permissions (via your device settings)
- Revoke calendar access (via your device settings)
- Not receive discriminatory treatment for exercising your privacy rights
To exercise these rights, please contact us using the information provided below or use the in-app account/data deletion feature. We will process your request without delay.
9 Data Security and On-Device Photo Retouching
We implement the following measures to ensure the security of your personal information:
- HTTPS (TLS) encryption for all data transmissions
- Supabase Row Level Security (RLS) policies for data access control
- Fashion try-on results are delivered only to their owner from private file storage using expiring signed URLs
- On-device photo retouching: Face and body retouching analyzes facial landmarks, contours and pose on your device to adjust the image. Harulook uses these measurements for photo editing, not to recognize your identity or authenticate an account. Separately requested cloud AI features send selected photos to the providers in Sections 6 and 7; provider processing and retention are separate from on-device retouching
- Guest access through anonymous Supabase Auth UUIDs, with only the Google or Apple account information selected by the user collected for optional sign-in
- Exact coordinates are not stored on servers and are discarded immediately after weather retrieval
- Coordinate-free location-use confirmation records are automatically recorded and deleted after six months
- Regular security audits and vulnerability monitoring
10 Cookies, Tracking, and No Sale or Sharing of Personal Information
The App does not use web cookies. However, we may collect in-app usage data (views, likes, saves) for service improvement. You can opt out through the in-app data deletion feature or by uninstalling the App.
No Sale or Sharing (CCPA/CPRA): The App does not collect or use behavioral information for personalized advertising and does not "sell" personal information or "share" personal information for cross-context behavioral advertising. It is configured to serve only non-personalized ads through Google AdMob. During ad delivery, advertising identifiers and device information may be processed for ad serving, frequency capping, and fraud prevention. You can limit or reset the advertising identifier in your device settings (iOS: Settings › Privacy & Security › Tracking; Android: Settings › Google › Ads). Choosing not to watch rewarded ads does not restrict basic service use; only the additional outfit feature may be unavailable.
11 Users Under 18
The App is intended for users aged 18 or older and asks users to confirm eligibility during onboarding. If we confirm use by a person under 18, we stop their service access and delete unnecessary personal information without undue delay, except minimal records we are legally required to retain.
12 Contact Us
For any privacy-related inquiries, please contact us at the email address above. We will respond within 3 business days.
13 Remedies for Infringement of Rights
If you need dispute resolution, counseling, or reporting regarding personal information infringement in the Republic of Korea, you may contact the following agencies:
- Personal Information Dispute Mediation Committee: 1833-6972 (www.kopico.go.kr)
- Personal Information Infringement Report Center (KISA): 118 (privacy.kisa.or.kr)
- Supreme Prosecutors' Office: 1301 (www.spo.go.kr)
- National Police Agency (Cybercrime Report System): 182 (ecrm.police.go.kr)
14 Changes to This Policy
Prior text and dates: View the pre-correction document preserved on October 26, 2026. Its original text lists an August 15, 2026 effective date and an October 20, 2026 revision date. The actual first-publication date of that revision has not been verified, so we do not infer its application period. The October 26 correction and the new retention and deletion rules planned for November 3 are distinguished in the notice above.
This Privacy Policy may be updated to reflect changes in laws, policies, or security practices. Any changes will be communicated through in-app notices or push notifications. Changes take effect on the announced date, at least seven days after notice. Prior versions of this Privacy Policy and their revision history are available upon request by emailing our Privacy Officer (iter729@gmail.com).