This policy explains what CueCaller collects, why, who else touches it, how long we keep it, and how to get a copy or have it deleted. The controller of your personal information is Visually Impressive Productions Corp, a Nevada corporation ("VIP", "we", "us"), 930 S 4th St, Ste 209
Las Vegas, NV 89101, [email protected].
For California residents, this is our Notice at Collection under the CCPA as amended by the CPRA. We collect the categories below, for the business purposes described in section 3, and we retain them for the periods in section 6.
| CCPA category | What that is, for us | Sold or shared? |
|---|---|---|
| Identifiers | Email address, account ID, IP address, session and password-reset tokens | No. Never. |
| Commercial information | Your plan, subscription status, billing period, and payment records held by Stripe | No |
| Internet or network activity | Server request logs, device label such as "Chrome · macOS", rate-limit counters | No |
| Professional information | Your role and the kind of shows you call, if you tell us on a waitlist form or survey | No |
| Your content | Cue sheets, show and setlist data, notes, logos, and settings you load in | No |
| Inferences | None. We do not build profiles about you. | No |
We do not knowingly collect personal information from anyone under 18. We do not collect sensitive personal information as the CCPA defines it, and we do not use or disclose it for purposes requiring a right to limit.
| Data | Where it lives | Notes |
|---|---|---|
| Email address | Cloudflare D1 | Lowercased. Your account identity. |
| Password | Cloudflare D1 | Stored only as a PBKDF2-SHA256 hash with a per-user salt and 100,000 iterations. We cannot read your password. |
| Sign-in sessions | Cloudflare D1 + one cookie | Session ID and a device label derived from your browser's user-agent, such as "Chrome · macOS". Used to show you where you are signed in and to enforce the device limit. |
| Password-reset and setup tokens | Cloudflare D1 | Random, single-use, expire in 7 days. |
| Plan and subscription state | Cloudflare D1 | Tier, status, period end, and your Stripe customer and subscription IDs. No card numbers. |
| Show files you save to the cloud | Cloudflare R2 + an index in D1 | The show blob in R2; name, artist, cue count, and size in D1. Paid tiers only. |
| Show files on your device | Your browser only | Held in local storage on the device you use, so a show survives a reload and works offline on paid tiers. Never sent to us unless you save to the cloud. Keys include sm-sheet, sm-depts, sm-settings, sm-sessions, sm-logo, sm-tx, cc-gsheet, cc_lic. |
| Teams and seats | Cloudflare D1 | Who owns a team and who holds a seat, for Tour plans. |
| Google connection | Cloudflare D1 | If you link Google Sheets: the linked Google account email for display, and your OAuth tokens encrypted with AES-GCM. Revocable at any time from the app. |
| Showtime boards | Cloudflare D1 | Board name, the Google Sheet ID it reads, an access token, a room code, and an optional PIN. |
| Waitlist entries | Cloudflare D1 + Resend | Email, name, role, confirmation state, and signup IP for abuse forensics. Double opt-in: nothing goes to our mailing audience until you confirm. |
| Survey responses | Cloudflare D1 | Your answers, plus user-agent and IP for abuse triage. Optional and clearly labelled when asked. |
| Support email | Google Workspace | Whatever you write to us, and our reply. |
| Abuse and rate-limit counters | Cloudflare D1 | Counts keyed to your account or IP. No content. |
| Server logs and traffic totals | Cloudflare | Standard request data. We read aggregate traffic counts only, through Cloudflare's analytics API. There is no analytics script or tracking beacon on the site. |
For people in the UK, EU, and EEA, this is our Article 13 disclosure. Each purpose has a legal basis:
| Purpose | Legal basis (UK/EU GDPR) |
|---|---|
| Create and run your account, sign you in, store and display your shows | Performance of a contract (Art. 6(1)(b)) |
| Take payment, manage subscriptions, renewals, and refunds | Performance of a contract (Art. 6(1)(b)) |
| Send service and billing email, including renewal reminders and price-change notices | Contract, and legal obligation where a notice is required (Art. 6(1)(b), 6(1)(c)) |
| Keep the Service secure, prevent abuse, rate-limit, check a new password against known breaches, alert you to a sign-in from a new device | Legitimate interests in securing the Service and protecting users (Art. 6(1)(f)) |
| Keep records of your consent to automatic renewal | Legal obligation (Art. 6(1)(c)) and legitimate interests |
| Translate cue text when you turn on translated voice calls | Contract, at your instruction (Art. 6(1)(b)) |
| Marketing email, product news, and beta invitations | Consent (Art. 6(1)(a)), withdrawable at any time |
| Surveys and product research | Consent (Art. 6(1)(a)) |
| Comply with law, tax, and accounting; resolve disputes | Legal obligation and legitimate interests |
Where we rely on legitimate interests, we have considered your rights and limited what we collect accordingly. You can object; see section 7.
We use a small number of providers. Each acts as our processor, on our instructions, and each is listed with what it receives and where it sits on the Subprocessor page. In summary: Cloudflare (hosting, database, file storage, translation, aggregate traffic), Stripe (payments), Resend (transactional and list email), Google (our own email, plus Sheets and Drive when you link them), and Have I Been Pwned (breached-password check).
youtube-nocookie.com, at which point Google may set cookies and receive viewing data under its own privacy policy. Nothing reaches Google unless you choose to watch. The player never appears inside the application.If you turn on translated calls, the cue text you choose to translate is sent to Cloudflare Workers AI and translated by a machine-translation model running on Cloudflare's network. The result is cached in your browser and spoken from that cache, so the live show path makes no network call. Cloudflare states it does not use Workers AI inputs to train models. This only happens if you enable the feature, and it is available on paid tiers.
We are based in the United States, and our providers process data in the U.S. and, for Cloudflare's global network, in the region nearest you. Where personal data moves out of the UK, EU, or EEA, the transfer relies on the Standard Contractual Clauses in each provider's data processing terms, together with the UK Addendum where relevant, and on the EU-U.S. Data Privacy Framework where the provider is certified. You can ask us for details of the safeguards for any specific provider.
| Data | Retention |
|---|---|
| Account record (email, hashed password, plan state) | While your account exists, then deleted within 30 days of a deletion request |
| Sign-in sessions | 90 days maximum, and removed sooner when you sign out or a newer sign-in replaces one |
| Password-reset and setup tokens | 7 days, then unusable; rows cleared on use |
| Cloud-stored shows | Until you delete them. Deleted shows are removed from the index immediately and swept from storage after. Retained 30 days after a paid plan ends, then may be deleted. |
| Consent-to-renewal records | 3 years, or 1 year after the subscription ends, whichever is longer, as auto-renewal law requires |
| Billing and tax records | 7 years, as tax and accounting rules require. This survives account deletion because we are legally required to keep it. |
| Waitlist entry | Until you unsubscribe or ask us to remove it |
| Survey responses | 24 months, then deleted or stripped of identifiers |
| Support email | 24 months after the conversation ends |
| Rate-limit counters | Minutes to 24 hours, depending on the limit |
| Aggregate traffic counts | Per Cloudflare's retention. No personal identifiers reach us. |
Email [email protected] from your account address, or tell us which account you mean. We respond within 30 days, and we do not charge for it. We will never penalize you or degrade your service for exercising a right.
You have the right to know, to delete, to correct, to opt out of sale or sharing (we do neither), to limit use of sensitive personal information (we collect none), and to non-discrimination. You may use an authorized agent, with proof of authorization. We verify requests by confirming control of the account email, and we may ask for more where a request is high-risk. If we deny a request we will tell you why, and you may appeal by replying to our decision.
In addition to the above you have the rights to restrict or object to processing, to data portability, and to withdraw consent at any time without affecting processing already carried out. You may lodge a complaint with your local supervisory authority, and in the UK with the Information Commissioner's Office. We would rather you came to us first.
We use one cookie. It is called cc_sess, it keeps you signed in, and it is HttpOnly, Secure, SameSite=Lax, with a maximum life of 90 days. It is strictly necessary, so it does not require consent. A second short-lived cookie exists only during the Google Sheets connection flow, to protect that flow from tampering, and is cleared immediately after.
There are no advertising cookies, no analytics cookies, and no tracking pixels on our own pages. That is why you do not see a cookie banner. The embedded video described in section 5 loads nothing until you press play, so it sets no cookie unless you choose to watch it.
Local storage is different from cookies: it holds your shows, settings, and offline licence on your own device and is not transmitted to us. Clearing your browser storage removes it, including any unsaved show, so save to the cloud or export first if you need it.
No system is perfectly secure. If you find a vulnerability, please tell us at [email protected] and we will work with you. If a breach affects your personal data we will notify you and the relevant authorities as the law requires.
If this policy changes materially we will post the new version here with a new effective date and, for account holders, notify you by email or in the app. Older versions are available on request.
Visually Impressive Productions Corp
930 S 4th St, Ste 209
Las Vegas, NV 89101
[email protected]
We have not appointed an EU or UK representative, as our processing of UK and EU personal data is occasional and low-risk. If that changes we will appoint one and name them here.