Waitlist Privacy Notice — Raxx
Status: DRAFT — pending attorney sign-off. This document is NOT legally operative. This document does NOT constitute legal or tax advice. Before publishing, consult a privacy attorney familiar with CAN-SPAM, GDPR Article 13, CASL, and CCPA/CPRA. The notice must be live at
/marketing/privacybefore this form is wired to a real endpoint (dependency per issue #589). Last updated: 2026-05-14 UTC. Legal entity: MooseQuest LLC, doing business as Raxx.
Purpose of This Document
This document covers two distinct deliverables:
-
The in-form privacy notice — the short disclosure that appears at the point of email collection on the waitlist signup form. This text goes directly into the
WaitlistSection.jscomponent. -
The waitlist-specific section for the main Privacy Policy — the text that lives in
privacy-policy-draft-2026-05-14.mdSection 2.1 under "Waitlist email." Cross-reference that document; the categories are already included. -
Recommended UX placement and acceptance flow — where each element lives in the UI.
-
Open questions requiring attorney sign-off before the endpoint goes live.
Part 1: In-Form Privacy Notice Copy
1.1 Recommended Placement
The notice should appear below the email input field and above the submit button, as inline text — not hidden behind a "more info" link. The privacy policy link must be functional (not a hash stub) before this form is wired to a live endpoint.
1.2 Copy — Standard Version (US Users)
By joining, you'll receive product updates and launch news from Raxx.
We won't share your email. You can unsubscribe at any time.
See our Privacy Policy.
Where "Privacy Policy" links to /marketing/privacy.
1.3 Copy — Extended Version (for GDPR/EEA Users or Global-Default)
If Raxx cannot geo-gate the form to US-only visitors (or chooses a single global notice for simplicity), use this fuller version to satisfy GDPR Article 13 at the point of collection:
By joining the Raxx waitlist, you agree to receive updates about Raxx product
availability and launch announcements. We will store your email address for this
purpose and delete it if you unsubscribe or request deletion. We will not share
your email with third parties for marketing purposes.
Legal basis for processing (GDPR): consent (Article 6(1)(a)).
Controller: MooseQuest LLC dba Raxx — support@raxx.app
For full details on your rights (including the right to access, correct, delete,
or object), see our Privacy Policy.
Where "Privacy Policy" links to /marketing/privacy.
1.4 Checkbox vs. Inline Notice — Recommendation
Recommendation: explicit opt-in checkbox for the waitlist form.
- For US visitors, an inline notice (no checkbox required) satisfies CAN-SPAM if the email is purely informational and the form makes the purpose clear.
- For Canadian visitors, CASL requires express consent for commercial electronic messages. An opt-in checkbox satisfies CASL's express-consent standard.
- For EEA visitors, GDPR requires freely given, specific, informed, and unambiguous consent. A pre-ticked checkbox does NOT satisfy GDPR; a user-ticked checkbox does.
- A single opt-in checkbox covers all three regimes simultaneously with minimal UX friction.
Recommended checkbox copy:
[ ] Yes, notify me when Raxx launches. I agree to receive product updates and launch
news. I can unsubscribe at any time. See Privacy Policy.
The checkbox must be unchecked by default. "See Privacy Policy" links to /marketing/privacy.
UX placement:
[Email address field]
[ ] Yes, notify me when Raxx launches. I agree to receive product updates and launch
news. I can unsubscribe at any time. See Privacy Policy.
[Join Waitlist button — disabled until checkbox is checked]
Disabling the submit button until the checkbox is checked is an acceptable UX pattern and provides a clean implementation-level record that consent was explicitly given.
Part 2: Success State and Confirmation
2.1 Post-Submission Success Message
After successful form submission, replace the form with:
You are on the list. We will be in touch when Raxx launches.
(This is the copy specified in issue #589's acceptance criteria.)
Do not add marketing copy to the success state. Keep it confirmatory only — any promotional copy in the post-submission state may undermine the transactional/consent classification of the collection.
2.2 Confirmation Email (Phase 2 — Not for v1)
A confirmation email to the waitlist subscriber is out of scope for v1 per issue #589. Phase 2 planning note: when a confirmation email is added, it must satisfy:
- CAN-SPAM transactional classification (primary purpose is confirming the subscription, not promoting the product) or, if it contains promotional copy, include an unsubscribe mechanism
- CASL identification requirements (business name, physical address, functioning unsubscribe)
- GDPR Article 13 disclosures at point of first contact
Attorney must review the confirmation email template before it ships.
Part 3: Unsubscribe and Data Deletion Flow
3.1 Unsubscribe Mechanism
Every marketing email sent to waitlist subscribers must include a functioning unsubscribe link or mechanism. Under CAN-SPAM, unsubscribe requests must be honored within 10 business days. Under CASL, within 10 business days. Under GDPR, without undue delay.
For the v1 waitlist (no emails sent at signup, per issue #589), the unsubscribe mechanism becomes relevant when launch-announcement emails are sent. At that time, the mechanism must be in place before send.
Implementation note: the waitlist_entries table (in Postgres per issue #589 grooming
update 2026-05-11) should include an unsubscribed_at timestamp column and an
unsubscribe_token column from day one, even if unsubscribe emails are not sent at v1.
This avoids a schema migration when emails do go out.
3.2 Data Deletion Request
A user may request deletion of their waitlist entry by emailing support@raxx.app. Per
the Privacy Policy, we will process verified deletion requests within 30 days.
Part 4: IP Hash and Rate-Limiting — Privacy Notice Implication
Per issue #589, the POST /api/waitlist/subscribe endpoint stores a salted SHA-256 hash
of the submitting IP address for rate-limiting and abuse-prevention purposes. This
constitutes collection of technical data derived from personal data (IP address).
The main Privacy Policy (Section 2.1, "Technical and device data") already covers IP address collection for security and rate-limiting purposes with a 90-day retention period. The waitlist form need not separately disclose the IP hash, provided the main Privacy Policy is linked from the form notice and is accurate.
Implementation requirement for issue #589: The IP address must be salted before hashing. Storing an unsalted SHA-256 of a raw IP address from a known IP range is effectively reversible. The salt must be stored as a server-side secret (not in the database alongside the hash).
Part 5: Quebec Geo-Block Interaction
Per project_quebec_geoblock_decision.md and the grooming update in issue #589 (2026-05-11),
the POST /api/waitlist/subscribe endpoint must apply the Quebec jurisdiction check before
writing to the store.
The waitlist form should display the geographic restriction notice consistent with the ToS Section 4.2. No special additional language is required in the form privacy notice — users from blocked jurisdictions will not reach the form submission endpoint.
If the geo-block relies on IP-based jurisdiction detection, the detection must occur before any personal data (including the IP address itself) is stored for the blocked user.
Open Questions for Attorney Sign-Off
Attorney type for these questions: privacy attorney familiar with CAN-SPAM, GDPR, CASL, and CCPA. Bring the waitlist form wireframe and the
POST /api/waitlist/subscribeendpoint data-flow diagram to the review.
OQ-WL-1 (CASL — express consent record-keeping):
For Canadian waitlist subscribers, CASL requires that express consent be documented. The
waitlist_entries table stores email, timestamp, IP hash. Attorney should confirm whether
storing the timestamp and IP hash constitutes sufficient consent documentation under CASL
s. 13, or whether additional fields are required (e.g., the consent form version/text
displayed at time of signup).
Source: https://crtc.gc.ca/eng/com500/faq500.htm
OQ-WL-2 (GDPR — consent documentation):
For EEA waitlist subscribers, GDPR Article 7(1) requires that the controller be able to
demonstrate that consent was given. The database stores email and submission timestamp.
Attorney should confirm whether storing the consent form version/text displayed at signup
(as a separate field or audit log) is required to satisfy Art. 7(1) in a regulatory
inquiry.
Source: https://gdpr-info.eu/art-7-gdpr/
OQ-WL-3 (CAN-SPAM — is the waitlist form a commercial solicitation?):
The waitlist form collects email for the purpose of sending "launch announcements." Under
15 U.S.C. § 7702(2)(A), a message is a "commercial electronic mail message" if its primary
purpose is "commercial advertisement or promotion of a commercial product or service."
A launch announcement for a paid SaaS product may qualify as a commercial electronic mail
message, triggering CAN-SPAM's opt-out, physical address, and subject-line requirements.
Attorney should confirm the correct classification and whether the opt-in checkbox is
sufficient, or whether a double opt-in workflow is required.
Source: https://www.law.cornell.edu/uscode/text/15/7702
OQ-WL-4 (CCPA — waitlist data at 100K record threshold):
Each waitlist email submission from a California resident counts toward the CCPA 100,000
consumer record threshold. At v1 launch volume, this is unlikely to be a concern. Attorney
should advise on the trigger level at which a waitlist-to-subscriber pipeline would require
a formal CCPA "Right to Know" and "Do Not Sell" disclosure flow, and whether a pre-emptive
disclosure (linking the Privacy Policy) from day one is the appropriate risk mitigation.
Source: https://oag.ca.gov/privacy/ccpa
OQ-WL-5 (No marketing without separate consent — scope confirmation): Issue #589 states: "Does NOT send any email on submit." Phase 2 will add launch announcement emails. Attorney should confirm that the opt-in checkbox consent captured at v1 signup is legally sufficient to send launch-announcement emails at a later (undefined) date, or whether re-consent is required if the time gap between signup and first email is long (e.g., >12 months). GDPR's purpose-limitation principle and CASL's implied-consent decay rules may require re-consent after a period of inactivity.
Sources
https://www.law.cornell.edu/uscode/text/15/7702— CAN-SPAM definitionshttps://www.ecfr.gov/current/title-16/chapter-I/subchapter-C/part-316— CAN-SPAM Rulehttps://gdpr-info.eu/art-7-gdpr/— GDPR Article 7, conditions for consenthttps://gdpr-info.eu/art-13-gdpr/— GDPR Article 13, information at point of collectionhttps://crtc.gc.ca/eng/com500/faq500.htm— CASL FAQ, transactional and consenthttps://oag.ca.gov/privacy/ccpa— CCPA- Issue #589: Wire waitlist form to real submission endpoint
- Issue #586: Add Privacy Policy and Terms of Service pages to marketing site
docs/legal/research/demo-session-email-gating-2026-04-29.md— prior CAN-SPAM/GDPR/CASL analysis