Privacy Policy
How the Adorn service, operated by Avocado Blvd LLC, collects, uses, and protects data.
1. Introduction & Scope
This Privacy Policy explains how Avocado Blvd LLC handles data in connection with the Adorn service (the "Service"), a platform that renders branded product images and emits a prioritized product catalog feed for merchants. It covers the merchants and their authorized users who sign in to and connect accounts with the Service, visitors to our public website at useadorn.com, and anyone who uploads a bill for the bill credit offer, whether or not they have an Adorn account. It takes effect on the last-updated date shown above.
2. Who We Are (Controller)
Avocado Blvd LLC is the entity responsible for the Service and is governed by the laws of the State of California, United States. You can reach us about privacy at /support.
3. Controller and Processor Roles
Under the GDPR, we act as a controller for the account and identity data we hold about merchants and their users, and as a processor for the product, catalog, and platform data we process on a merchant's behalf and under its instructions. This split reflects that a merchant decides which stores, ad accounts, and product data to connect, while we operate the platform that processes them. We also act as a controller for the data we collect about visitors to our public website and about anyone who uploads a bill for the bill credit offer.
4. Data We Collect, Why, and Where It Lives
We collect only what the Service needs to operate. The table below maps each category to the real technology that stores or processes it.
| Data | Why | Where it lives |
|---|---|---|
| Account & identity (email, name, user id) | Sign-in, membership, access control | Handled by Clerk, our authentication sub-processor |
| Connected-platform OAuth access tokens (Shopify, Meta, TikTok, Pinterest, Snapchat) | Read your catalog and register your feed on your behalf | A per-tenant secret store, envelope-encrypted at rest under a platform key (never stored in reversible form) |
| Billing identifiers and subscription state | Run your subscription and trial | Your name, billing address, and card are entered on Stripe's hosted checkout and are held by Stripe. We store only your Stripe customer and subscription identifiers, plan, status, and renewal date in Cloudflare D1 |
| Rendered product images (Output) | Deliver the designed creative into your feed | Cloudflare R2 object storage |
| Tenant configuration, product/catalog data, and an operational error log | Run the rule engine, render, and serve the feed | Cloudflare D1; the error log holds only classified, opaque tokens, no raw personal data |
| Product data ingested at your direction | Source the catalog we design and feed | From your chosen source, Shopify, a pasted feed URL, or DataFeedWatch |
| Support messages you send us | Respond to your request | Bot-checked with Cloudflare Turnstile and delivered by email via Resend |
| Bills you upload for the bill credit offer, with the email and store you give | Check your claim and add your credit | Bot-checked with Cloudflare Turnstile. The bill is kept privately in Cloudflare R2, never at a public address, and the claim record in Cloudflare D1 |
When you install Adorn from Shopify or connect a Shopify store, Adorn asks Shopify for four permissions: to read your products, your inventory levels, your markets (the countries you sell in, with their currencies and prices), and your storefront's product listings, which also let Adorn read the logo, colors and slogan your store shows. Adorn uses them to design your product images, build your feeds and suggest your brand settings. None of them lets Adorn change anything in your store.
Some features ask Shopify for one more permission, and only when an owner of the store turns the feature on in Settings under Data sources: Shopify discounts on designs asks to read your discounts; Designs saved to your Shopify products asks to edit your products, so Adorn can save its designs to them; and Sales reports in Shopify asks to add your Adorn campaigns to Shopify's Marketing page and to read and add notes on your sales charts. Adorn does not ask for permission to read your orders or customers, or to add a web pixel to your store.
5. Sub-Processors
We use the following sub-processors, each for the purpose named above. Each one may handle personal data on your behalf. We remain responsible for their handling of data processed on your behalf and bind them to appropriate data-protection obligations (GDPR Art. 28).
- Clerk, authentication and account identity.
- Cloudflare, compute, R2 storage for images and for bills you upload for the bill credit offer, D1 database, Turnstile bot mitigation on the support and bill credit forms, and the container that encodes video.
- Resend, transactional, support and bill credit email delivery.
- Stripe, subscription checkout and card payment. Your name, email, billing address and card details are entered on Stripe's own hosted checkout page and are held by Stripe. They never reach the Service.
- Shopify, connected commerce platform and product source.
- Meta, connected advertising platform and feed destination.
- TikTok, connected advertising platform and catalog destination, if you choose to connect it.
- Pinterest, connected advertising platform and catalog destination, if you choose to connect it.
- Snapchat, connected advertising platform and catalog destination, if you choose to connect it.
- DataFeedWatch, optional product feed source.
- Figma, design file access, used to bring brand artwork into the Service. We store the Figma access token, refresh token and Figma account id against the email address of the person who authorized the connection.
- Sentry, error monitoring. It receives error reports from the Adorn app, with a recording of the app screen leading up to an error, and records of requests to our servers, so we can find and fix problems.
5b. Product and Catalog Data Vendors
The vendors below run parts of the image, copy, and video pipeline. They receive product and catalog data only, meaning a product image address and product text. They receive no name, no email address, no billing detail, and no account credential, which is why they are listed separately from the sub-processors above rather than alongside them. They are named here because Sections 8 and 15 describe every vendor that touches your data, not only the ones that handle personal data.
- Modal, the graphics hardware that removes a product photo's background. It receives the image address and returns the cut image.
- Anthropic, generates campaign and element wording. It receives a short brief, your store identifier, and product title, type, brand and collection text.
- Bria, background removal and product scene generation. It receives the product image address and a short product description hint.
- fal.ai, background removal. It receives the product image address. Engaged on your own account, using an API key you supply.
- Photoroom, background removal and product scenes. It receives the product image address. Engaged on your own account, using an API key you supply.
- Higgsfield, turns a finished product image into a short video. It receives the address of that image. Engaged on your own account, using an API key you supply.
6. Legal Bases for Processing
Where the GDPR applies, we rely on: performance of our contract with you (to provide the Service); our legitimate interests (to secure, maintain, and improve the Service and prevent abuse), balanced against your rights; and your consent where it is specifically required. Merchants are responsible for the legal basis for any data they connect and process through the Service.
7. How We Use Data
We use data to provide and operate the Service: to authenticate accounts, ingest your product data, render designed images, generate and serve your catalog feed, respond to support requests, and to secure the Service and prevent abuse. We do not use your product data or connected-account tokens for any purpose other than operating the Service for you.
8. Data Sharing & Disclosure
We share data only with the vendors named in Section 5, in both of the lists there, and with Google through the Google Analytics on our public website described in Section 15. We share it only as needed to operate the Service, or where disclosure is required by law or to protect rights and safety. We do not sell personal information. We do not share personal information for cross-context behavioral advertising.
9. International Transfers
The Service is operated using US-based processing. Where data is transferred from other regions, we rely on appropriate safeguards, such as standard contractual clauses where relevant. For personal data from the European Economic Area, the United Kingdom or Switzerland, that safeguard is the European Commission's standard contractual clauses, with the United Kingdom's addendum and the Swiss amendments where they apply.
10. Data Retention
We keep account and identity data for the life of the account. Rendered images stay in Cloudflare R2 while your account is active, unless they belong to a workspace we erase when Shopify asks us to. When Shopify asks us to erase a store that has uninstalled Adorn and not installed it again, we delete everything we hold that came from that store, including its stored credential. Because we do not record which source each product came from, we also delete every other product in the same workspace, with its rendered images, its AI work and its performance history. We keep what you made yourself, and your billing and audit records. Our operational error log retains only classified, opaque tokens and never raw personal data. If a store turns on Sales from Shopify orders, we delete each order row 60 days after the order, in a cleanup that runs every day.
We erase nothing for that request when the workspace is one we protect from automatic deletion, when the store is connected through a custom Shopify app built for that store alone, when our access to the store came from another Shopify app, or when the store has installed Adorn again and Shopify confirms that access still works. The workspace then stays as it is until you ask us to delete it, as /data-deletion describes.
We delete a bill you upload for the bill credit offer 30 days after we add your credit, decline your claim or tell you we could not add the credit, or when your claim ends without a credit. A claim ends without a credit 180 days after upload if no Adorn store is owned by your email by then. A claim we have approved for your store ends without a credit 180 days after upload if, by then, 30 days have not passed since your store's first paid Adorn bill, or we have not added any of the credit for a reason on your side, such as a failed payment. If we reopen your claim, those 180 days count from the day we reopen it. If we have not added the credit because of a problem on our side, such as our connection to Shopify or to our payment processor, the claim does not end on its own, and we keep the bill while it waits. While we are still reviewing a claim for a store, or have added part of its credit, we keep the bill until the claim ends. We keep a record of each claim, including the amount and our decision, permanently, so each store and each email address gets one bill credit, whether or not you become a customer. If your account is deleted, or Shopify asks us to erase your store, we delete the store name you typed on that store's claim and replace your email address and the bill's invoice number with a scrambled fingerprint, which only lets us recognize a repeat claim.
11. Security
Connected-account OAuth tokens are envelope-encrypted at rest under a platform key held outside the database. Tenants are isolated so one merchant cannot reach another's data, images, or feed. Inbound platform webhooks are verified by HMAC before any action. Secrets are read by name at runtime and are never written into code or logs.
12. Your Rights
Subject to applicable law, you have rights to access, correct, delete, port, restrict, and object to the processing of your personal data, and to withdraw consent where processing relies on it. You can exercise these rights, or ask a question, at /support. Where we act as a processor for a merchant, we will refer or assist with a data-subject request as that merchant directs.
13. Platform-Initiated Deletion
We honor platform-initiated erasure. Our compliance endpoint at
/webhooks/shopify/compliance verifies and acts on Shopify's
customers/data_request, customers/redact, and shop/redact
compliance webhooks, and we honor Meta's data-deletion path. Adorn keeps information about a store's orders
only when an owner turns on Sales from Shopify orders, and Adorn does not offer that feature today, so it holds
none now. With Sales from Shopify orders on, Adorn keeps one row for each product in an order: Shopify's ids
for the order and the product, the product page the visit landed on, the ad tracking values for source, medium
and campaign, the time of the order, and the amount spent on that product with its currency. These rows hold
no name, email address, phone number or postal address. When Shopify sends customers/redact, we
delete the rows for the orders it names in that store. When Shopify sends customers/data_request,
our team is told which rows we hold for the orders it names, and gives them to the store owner within 30 days
of the request. shop/redact
deletes everything we hold that came from that shop, as Section 10 describes.
Step-by-step deletion instructions, including how to disconnect a single connected platform and how to request full account deletion, are at /data-deletion.
14. California Privacy (CCPA/CPRA)
If you are a California resident, you have the right to know the categories of personal information we collect and the purposes for using them, and the rights to delete, correct, and opt out. As stated above, we do not sell or share personal information for cross-context behavioral advertising, and we will not discriminate against you for exercising your rights. The Google Analytics on our public website, described in Section 15, measures visits to it and is not used to show you ads on other websites. Requests can be made at /support.
15. Analytics and Cookies
Our public website at useadorn.com loads Google Analytics 4 and Cloudflare Web Analytics on its pages, except on shared design links (addresses that begin useadorn.com/p/), the docs search, and the switch offer form and its confirmation page, and it loads neither when your browser sends a Do Not Track signal. Together they record the pages you view, the page that sent you, your browser and device, and an approximate location worked out from your IP address. Google Analytics sets its own cookies on useadorn.com, and Google receives what it records. Cloudflare Web Analytics sets no cookies. The Adorn app at app.useadorn.com loads neither. Apart from these two, the third parties that receive any data are the vendors named in Section 5, in both of the lists there.
We do set a few cookies of our own, and we state them here rather than leave you to find them. If you
arrive on our home page from a link that carries campaign tags or an ad click identifier, and your browser
does not send a Do Not Track signal, we store an ac cookie for 30 days on the
.useadorn.com domain, marked Secure, HttpOnly, and
SameSite=Lax, so our marketing site and our app can recognize that they are the same visit and
we can tell which link or ad brought you here. It is a first-party cookie shared only between our own two
subdomains. It is never sent to another company and cannot be used to follow you across other websites. It
holds the campaign tags from the link you followed and, if the link carried one, the click identifier Google,
Meta or Microsoft added to it.
When you connect another service to Adorn, such as a Shopify store, a sales channel or Figma, or install Adorn from Shopify, we set a short-lived cookie that ties that sign-in to the browser you started it in. A sign-in finished in any other browser is refused.
When you install Adorn from Shopify, we set a short-lived adorn_claim cookie on the
.useadorn.com domain, so the account you create can claim your store.
These cookies are marked Secure, HttpOnly, and SameSite=Lax. They are
first-party, they are never sent to another company, and they are not used to follow you across other
websites.
16. Children's Privacy
The Service is a business-to-business product for merchants and is not directed to children. We do not knowingly collect personal information from children.
17. Changes & Contact
We may update this Policy; the effective date at the top reflects the latest version, and material changes will be notified through the Service. Questions or requests can be sent to the controller, Avocado Blvd LLC, at /support.