Privacy Policy
Version 1.1 - Effective July 20, 2026 (PST)
1. Who We Are and Our Commitment to Your Privacy
Primescript, the agentic markdown editor for researchers, is operated by Primescript Research Software Inc. ("Primescript", "we", "us", "our") in Vancouver, British Columbia, Canada. This Privacy Policy explains what personal information we collect, why we collect it, where it is stored, who processes it, how long we keep it, and the rights you have over it. It works together with our Terms of Service.
We are accountable for the personal information in our custody, including information we transfer to service providers for processing. Our designated privacy contact is friends@primescript.com - every question, request, or complaint in this policy goes there.
The short version of our approach: we show no ads, we run no analytics trackers, we never sell your data, we do not use your content to train AI models without your explicit opt-in consent, and your stored data lives in Canada.
2. What This Policy Covers
"Personal information" means information about an identifiable individual, as defined by the Personal Information Protection and Electronic Documents Act (PIPEDA) and the British Columbia Personal Information Protection Act (PIPA). This policy covers the Primescript web application and the transactional emails we send.
A reminder from Section 6 of our Terms: Primescript is not designed for regulated or highly sensitive personal data. Do not store protected health information, financial account credentials, government-issued identification numbers (such as Social Insurance Numbers), or export-controlled technical data in the service.
3. Information We Collect
Account information. Your email address, collected when you sign in with a one-time email code or with Google. If you use Google sign-in, Google also provides your name and profile picture; we copy the picture into our own Canadian storage (the temporary raw copy is deleted within one day). If you apply for access, we collect the email address you submit. Sign-in codes are single-use and stored only as salted hashes. We never see or store a password - Primescript has no passwords.
Content you create. Your documents, notes, comments and replies, reactions, images and PDFs you upload, and audio recordings you make inside a project. Content is personal information whenever it contains it.
Technical information. A session cookie that keeps you signed in, server logs of requests and security events, and automatic error reports when the application malfunctions (described in Section 5). We use no analytics or advertising trackers, no fingerprinting, and no session recording.
Information stored on your device. Your browser's local storage holds your theme preference, device and client identifiers, recently opened projects, and a pending invitation link if you followed one. Your browser's IndexedDB holds offline copies of your documents and cached paragraph text and search embeddings so the editor works offline. This information stays on your device; clearing your browser data removes it.
Communications. Feedback you submit in the app (your message and your email address, delivered to friends@primescript.com) and any email you send us.
4. Why We Collect It
- To authenticate you and keep your account secure.
- To store your content and synchronize it across your devices and collaborators.
- To power features you invoke: audio transcription, AI assistance, and semantic search.
- To send transactional email: sign-in codes, project invitations (the invitation shows the inviter's email address to the invitee), and access approvals.
- To protect the platform: uploaded files are automatically scanned for malware, and security events are logged.
- To diagnose and fix defects when the application reports an error.
- To respond when you contact us.
If we ever want to use your information for a new purpose, we will identify that purpose to you before using it. We do not use your information or content for advertising, and we do not use your content to train AI models without your explicit opt-in consent.
5. Consent
By creating an account and using Primescript, you consent to the collection, use, and disclosure described in this policy, for the purposes described in this policy.
Features process data only when you use them. Recording audio sends that audio for transcription. Invoking an AI feature sends the text you selected or submitted to an AI provider. Viewing a document with an embedded Datawrapper chart makes your browser load that chart from Datawrapper. If you do not use a feature, that processing never happens.
Error reports. When the application encounters an error, a technical report is sent automatically to our error-monitoring provider (Sentry, hosted in the EU) so we can find and fix the bug. These reports are configured minimally: no session replay, no performance tracing, and no personal information is attached by default. We run no optional analytics or telemetry programs; if we ever introduce one, participation will be opt-in, as promised in our Terms.
Withdrawing consent. You may withdraw your consent at any time by emailing friends@primescript.com, subject to legal or contractual restrictions. We will explain the consequences of withdrawal - for example, we cannot provide the service without an email address to sign you in.
6. Cookies and Local Storage
We set two cookies, both strictly necessary to operate the service:
- session - keeps you signed in. It is HttpOnly, Secure, and SameSite=Lax, and lasts up to one year or until you sign out.
- authorized - a simple yes/no flag that tells the application this browser has signed in before.
We set no analytics, advertising, or third-party cookies - which is why you see no cookie banner. Local storage and IndexedDB usage is described in Section 3.
7. Where Your Information Is Stored
Your stored personal information and content - the database, documents, images, audio, and backups - lives in Amazon Web Services' Canadian region (ca-central-1, Montréal). Search embeddings are also generated inside that region.
For transparency, three caveats: (a) static application files and profile avatars are served through a content delivery network that may cache copies at edge locations in North America and Europe; (b) when you use specific features, data is processed by the providers listed in Section 9, some of which operate outside Canada; and (c) error reports go to our monitoring provider in the EU. Information processed outside Canada is subject to the laws of those jurisdictions. We select providers that offer protection comparable to our own commitments.
8. How We Protect Your Information
- All connections to Primescript are encrypted in transit (TLS 1.2 or higher, with HTTP Strict Transport Security).
- Identity fields - your email address, name, and avatar location - are additionally encrypted at the application layer with envelope encryption (AWS KMS) before they are stored. Email lookups use a keyed blind index, so your plaintext address is never queried directly. Encryption keys rotate every 90 days.
- Your content is stored on encrypted AWS infrastructure.
- Secret projects are end-to-end encrypted in your browser with AES-GCM-256. The passphrase never leaves your device. We cannot read secret project content - and we cannot recover it if you lose the passphrase, so keep it safe.
- Real-time collaboration and presence data is held as short-lived, in-memory synchronization state that expires quickly.
- Our servers can only communicate with the specific providers listed in Section 9 - every other outbound connection is blocked at the network level by an allowlist.
- Uploaded images - document images and profile pictures - are automatically scanned for malware, and flagged files are quarantined. Profile pictures are additionally validated and re-encoded during processing.
- Service credentials and API keys are kept in a managed secrets vault, never in code.
9. Third-Party Service Providers
We use a small set of service providers, each bound to confidentiality and each receiving only what its function requires:
- Amazon Web Services (AWS) - receives: all stored data, email addresses for transactional mail, and paragraph text for search embeddings. Purpose: hosting, email delivery, and embedding generation. Location: Canada (ca-central-1). Retention: per our schedule in Section 10.
- Google - receives: your sign-in when you choose Google authentication (Google sends us your email, name, and picture); your browser also loads Google Fonts and the Google sign-in scripts. Purpose: optional sign-in and application typography. Location: global. Retention: your Google account is governed by Google's own privacy policy.
- AssemblyAI - receives: audio recordings you transcribe and the resulting transcripts. Purpose: speech-to-text, only when you initiate it. Location: United States. Retention: we instruct deletion of your audio and transcript from AssemblyAI immediately after processing.
- Cerebras - receives: the text you select or submit to AI features (search queries, passages under review, lecture transcript excerpts, assignment text). Purpose: AI inference, only when you invoke a feature. Location: United States. Retention: none - per the provider's published policy, inputs and outputs are processed to return your result, then discarded; they are not retained and not used to train models.
- Sentry - receives: automatic technical error reports, with no session replay and no personal information attached by default. Purpose: error monitoring. Location: European Union. Retention: short-term, per Sentry's schedule.
- Datawrapper - receives: a chart request from your browser (the chart identifier and your IP address, inherent to any web request), only when you view a document with an embedded chart. Purpose: chart embeds. Location: European Union.
- Proton Mail - receives: email you send to friends@primescript.com. Purpose: our inbound mailbox. Location: Switzerland.
We never sell personal information. Our providers may not use your data for their own purposes.
10. How Long We Keep It
- Account information - for the life of your account, then deleted on request (Section 11).
- Content - until you delete it. A deleted project moves to your Trash, where you can restore it yourself for 30 days; after 30 days it and all of its contents (documents, notes, comments, images, recordings, and sync history) are permanently purged. Deleted comments are removed permanently right away; deleted notes are purged after the same 30-day window. Residual copies in our automated backups age out on a rolling 30-day cycle after purge.
- Audio recordings - until you delete them; the transcription provider's copy is deleted immediately after processing.
- Raw avatar uploads - deleted within one day (only the processed picture is kept).
- Malware-quarantined files - 30 days, then destroyed.
- Access logs - 90 days. Security audit logs - 12 months. Application logs - up to 12 months.
- Sign-in codes - single-use and hashed; invalid the moment they are used.
11. Your Rights
- Access. Ask us what personal information we hold about you and receive a copy. We respond within 30 days.
- Correction. Update your name and picture in the app; email us for anything else.
- Withdrawal of consent. As described in Section 5.
- Deletion. Delete your account directly in the app: open your profile and choose Delete account. We re-verify your identity with a one-time email code, then schedule the deletion with a 72-hour grace period - you get an email with the exact time, and your profile shows a countdown where you can cancel any time before the deadline. When the deadline passes, your account and all of its data are permanently and automatically erased. You can also request deletion of specific content or your account by emailing friends@primescript.com. One nuance: comments and notes you wrote in another person's project stay with that project - deleting your account removes your membership and identity from it.
- Export. Export your documents as PDF from the editor at any time, and request a complete copy of your data by email.
To exercise any of these rights, email friends@primescript.com. We may need to verify your identity first, and we do not charge for reasonable requests.
12. Questions, Complaints, and Regulators
If you have a concern about how we handle your information, contact us first at friends@primescript.com - we commit to working through it with you in good faith. If you are not satisfied, you may complain to the Office of the Privacy Commissioner of Canada (priv.gc.ca, 1-800-282-1376) or the Office of the Information and Privacy Commissioner for British Columbia (oipc.bc.ca). Where both PIPEDA and BC PIPA could apply, we honour whichever gives you greater protection.
13. Data Breach Notification
If a breach of our security safeguards creates a real risk of significant harm to you, we will notify you and report to the Privacy Commissioner of Canada as soon as feasible. The notification will describe what happened, what information was involved, what we are doing about it, and steps you can take to protect yourself. We keep records of all breaches as the law requires. We notify through your account email and an in-app notice.
14. Children
Primescript is for adults: you must be at least 18 to use it, and users under British Columbia's age of majority (19) may only use it under institutional supervision or with parental consent, as set out in our Terms. The service is not directed at children, and we do not knowingly collect children's personal information. If we learn that we have, we will delete it.
15. Changes to This Policy
Each version of this policy has a version number and effective date. If we make material changes, we will announce them by email or an in-app notice with reasonable advance notice. Continued use of Primescript after a change takes effect means you accept the updated policy.
16. Contact
For anything in this policy - questions, access or deletion requests, complaints, or just curiosity about how something works - email friends@primescript.com. We value transparency and will give you a straight answer.
Mail:
Primescript Research Software Inc.
329 Howe St, Unit #308
Vancouver, BC V6C 3N2
Canada
End of Privacy Policy (Version 1.1)
