Who operates S.A.P
S.A.P - Sexy Ass Plants is operated by Christian Looff in the United States. Privacy and support questions can be sent to looffllc@gmail.com.
Information S.A.P collects
- Account information provided by Apple or Google, such as your name, email address, provider, and user ID.
- Your plant ratings, lists, saved Spaces, block placements, filters, onboarding state, and garden preferences.
- An optional U.S. ZIP code and the estimated USDA hardiness zone you review or choose for location-aware planning.
- Photos you select for private Space Visualization or save to a Plan canvas, your drawings and photo annotations, and the generated concepts, previews, and reports returned to you.
- Garden Plan, shopping, and visualization requests, structured plant context, and generated guidance.
- Subscription product, originating store, status, renewal period, billing and transaction references, and AI allowance usage. S.A.P does not receive your full payment-card details.
- Limited mobile and website crash and performance diagnostics used to keep S.A.P reliable. Website performance diagnostics include a Web Vital name, rating, bounded value, coarse page area, and whether the browser release matches the server release. Website error monitoring also includes a fixed error category, operation, runtime, release, sanitized application stack locations, and bounded request or job references for support. Raw error messages, full URLs and queries, cookies, tokens, account IDs, photos, and drawing content are excluded from these diagnostic payloads. Website error monitoring does not record session replays.
- On the website, necessary Supabase authentication cookies that establish, refresh, and end your signed-in browser session, plus a browser-local preference that remembers whether you selected Real or Pixel mode.
- Standard web-request information processed by the hosting and authentication providers, such as IP address, browser or device details, timestamps, and the requested route, for delivery, security, and diagnostics.
How S.A.P uses information
S.A.P uses this information to authenticate you, save your garden work, personalize plant results, enforce plan access and allowances, create requested guidance and previews, provide support, prevent abuse, and diagnose failures. S.A.P does not sell personal information and does not use it for third-party advertising or cross-app tracking.
Web sessions and local preferences
The customer website uses Supabase session cookies so signed-in pages and requests can recognize your account. Signing out on the website ends the S.A.P session in that browser; clearing the site's cookies also removes the browser's saved session. Real or Pixel mode is stored separately in local browser storage and remains until you change it or clear that site data. Clearing either item does not delete your S.A.P account or server-saved garden work.
Using one account on web and iPhone
When you use the same Apple or Google sign-in identity, S.A.P uses the same account for supported web and iPhone experiences. Supported ratings, lists, Spaces, Plans, account preferences, and paid access can appear across those surfaces. Available features may differ by surface. Signing out of the website ends that browser session; it does not delete your account or automatically sign out every other device.
For RevenueCat, S.A.P uses your exact Supabase account UUID as the App User ID on both web and iPhone. This non-email identifier lets a confirmed purchase supply access across those surfaces and helps S.A.P prevent a second subscription in a different storefront. The S.A.P server, not browser-only purchase information, decides paid access.
ZIP code and hardiness-zone guidance
When you ask S.A.P to find your zone, S.A.P checks a bundled copy of the 2023 USDA Plant Hardiness Zone Map ZIP Code Listings published by USDA Agricultural Research Service and the Oregon State University PRISM Climate Group. S.A.P keeps the source half-zone and derives the whole-number zone used by Discover and Plan. You can review or replace that estimate at any time. The ZIP lookup does not use OpenAI, does not request precise location, and does not guarantee that a plant will thrive in a particular place.
Photos and generated content
In the Plan canvas, choosing a photo prepares a preview on your device. Confirming the private upload saves a resized, metadata-stripped copy in private storage so you can return to it and edit its annotations. Saving a photo does not start AI generation. The saved attachment is reusable: a successful or failed generation does not automatically delete it. You can remove or replace it from the canvas; deleting its Space or your account also removes the associated private content when cleanup succeeds. If cleanup fails, S.A.P keeps recovery information so removal can be retried.
When you confirm Generate concept, S.A.P sends the saved sketch image or the full saved photo, annotations, and relevant plant context to OpenAI to generate and check the concept. Marking an area as protected controls image editing; it does not hide that area from the provider. Avoid uploading photos containing information you do not want processed this way.
The separate Space Visualization flow uploads a source photo when you start a visualization. Those source photos are temporary by default and are scheduled for cleanup after generation or a failed attempt. Generated content is private to your account. Removing or replacing a Plan photo can make concepts based on that photo unavailable. Copies you save to your device are outside S.A.P's deletion controls.
Service providers
S.A.P uses service providers only to operate requested product functions:
- Supabase for authentication and web session cookies, database records, private storage, and server functions.
- RevenueCat for subscription offerings, checkout, purchase status, restoration, entitlement reconciliation, billing management, and the web customer portal. For website checkout, S.A.P may provide the signed-in account email to prefill the billing contact field.
- Apple for App Store purchases, restoration, subscription management, and refunds.
- Stripe as the payment gateway for RevenueCat Billing website purchases. Payment details entered in web checkout are processed by RevenueCat and Stripe rather than S.A.P's application servers.
- Google and Apple for OAuth sign-in.
- Perenual for plant catalog facts. S.A.P does not send your account, photos, or saved garden data to Perenual. Source-image records used during catalog quality review remain private and are not shown in customer surfaces.
- OpenAI for requested planning, shopping, image generation, and image-analysis features. OpenAI may retain submitted content in abuse-monitoring logs for up to 30 days by default, or longer where required for legal or safety reasons. Deleting content from S.A.P does not guarantee immediate deletion from a provider's systems. See OpenAI API data controls.
- Trigger.dev for background workflow execution.
- Sentry for privacy-limited crash and performance diagnostics in the iPhone app and error monitoring on the website. Private build source maps help translate website stack locations into application code for debugging; they are not customer photos or drawings.
- Vercel for hosting and delivering the customer web application and this public support and policy website, and for processing privacy-limited web request and diagnostic logs.
- Cloudflare R2 and Cloudflare's content-delivery network for storing and delivering public plant catalog images.
Retention
Account data is retained while your account is active. Temporary visualization source photos and reusable Plan attachments follow the different lifecycles described above. Generated previews, saved plans, and Spaces remain until you delete them or your account. When you delete an individual Plan, its hidden recovery metadata may remain for up to 30 days before permanent removal. When you delete a visualization, its private image file is removed immediately after deletion succeeds. Hidden Plan and visualization recovery metadata becomes eligible for permanent removal after the 30-day recovery period. Operational logs and diagnostics are kept for limited periods based on security, reliability, legal, and service-provider settings. Browser session cookies expire or are removed based on session, sign-out, and browser behavior. The Real or Pixel preference remains in local browser storage until you change it or clear that site data. After account deletion, S.A.P may retain server-side billing-window and cost totals under a one-way store-subscription hash so recreating an account cannot reset an active subscription's AI allowance. Those retained allowance rows exclude the deleted S.A.P user ID, prompts, photos, source record references, provider request IDs, and raw provider usage. RevenueCat, Apple, Stripe, and other payment providers may retain transaction records under their own legal obligations.
S.A.P also retains a purpose-limited, service-only tombstone containing the former random S.A.P User ID (UUID) and bounded deletion status, counters, and timestamps. It is used only to reject later S.A.P data writes under that deleted ID and to recognize and repeatedly request removal of a RevenueCat customer that an older device may recreate. The tombstone contains no email, store receipt, credential, webhook or provider payload, or raw provider response or error. Because an old installed client can reference the UUID later, the current tombstone has no fixed automatic deletion date. RevenueCat removal is recurring and may not be instantaneous.
Your choices
- You can change or cancel an Apple subscription through Apple subscription management. You can manage a RevenueCat Billing website subscription by choosing Manage subscription from the signed-in S.A.P Account page. S.A.P requests the single-use customer-portal link only after you choose that action and opens it immediately.
- You can remove saved Spaces, plans, source photos, and generated visualizations from their app surfaces.
- You can permanently delete a supported account from the website Account page or from Profile > Account > Delete Account in the iPhone app.
- Apple-linked deletion requires a fresh Apple confirmation on the website or in the iPhone app so S.A.P can verify the matching identity and revoke Apple authorization. Support can help if that path is unavailable.
- You can sign out of the website and clear its cookies or local visual-mode preference through your browser controls.
- You can contact support to ask about your information or report a privacy concern.
Children
S.A.P is a general-audience garden planning service and is not directed to children under 13. A child should use S.A.P only with permission and supervision from a parent or legal guardian.
Changes to this policy
S.A.P may update this policy when product behavior or legal requirements change. The current effective date appears on this page. Material changes will be communicated through an appropriate app or website notice.