Privacy Policy

Last updated: 26 September 2026

1. Information We Collect

When you use Course Foundry, we may collect the following information:

  • Account information: email address, name, and profile details when you create an account.
  • Waitlist information: email address when you join our waitlist.
  • Usage data: information about how you interact with our platform, collected through the analytics service listed in section 4.
  • Content: course materials and files you create within the platform.

2. How We Use Your Information

  • To provide, maintain, and improve our services.
  • To send you updates about our platform (you can opt out at any time).
  • To process AI-assisted features using the AI providers listed in section 4.
  • To analyse usage patterns and improve the user experience.

3. Data Storage and Security

The database, file storage, authentication and application are hosted in the United States (Supabase US-East and Vercel US regions), and so is rendered course output. AI processing takes place in the regions of the selected AI provider. EU data residency is not currently available.

Access to your data in the database is controlled by row-level security. We use industry-standard encryption for data in transit (HTTPS) and authentication tokens.

CourseFoundry does not use your content to train AI models. What an AI provider says about its own training and retention practices is that provider's statement, attributed to it in the list in section 4. CourseFoundry stores some AI content, depending on the feature and on your workspace's settings. The list below shows each kind of stored AI data, when it is stored, who can read it and how long it is kept.

AI usage recordsWhen and what

For every AI request.

Who made the request, which feature it came from and, for a course, which course, the model and provider, token counts, cost in credits, response time, the outcome, and for a failed request the first 120 characters of the error message.

Who can read it
  • The user who made the request
  • Organisation owners and administrators, for requests made in their organisation
How long it is kept Kept until the account is deleted.
Prompt summariesWhen and what

Only when an organisation turns on prompt logging.

A short description of each request: the feature used and any course, lesson and title text it concerned, up to 60 characters each, plus the length of any content sent. Never the full prompt.

Who can read it
  • The user who made the request
  • Organisation owners and administrators, for requests made in their organisation
How long it is kept Kept until the account is deleted.
Captured prompts and responsesWhen and what

Only when a user turns on capture for themselves, or an organisation turns it on for its members.

The full request: system prompt, messages, the AI response and any tool calls. Images are replaced with a short placeholder. Teaching Guide material is also replaced with a short placeholder, and so is the AI response to a request that used it. Where the guide is available to the AI, earlier AI replies in the conversation, and any reply that follows them, are replaced too. This is because the guide is private to its author. Email addresses and phone numbers are redacted only when the organisation turns on personal-data redaction.

Who can read it
  • The user who made the request
  • Organisation owners and administrators, for prompts captured in their organisation, which covers every member while organisation-wide capture is on
How long it is kept Deleted automatically after the chosen period of 1 to 365 days (default 30). The period is fixed when the prompt is captured, so changing the setting later does not change when prompts already captured expire.
Prompts held for image processingWhen and what

When the selected AI model cannot process an image at the time of the request.

The full prompt and conversation turns, with the images held separately in private storage.

Who can read it
  • The user who made the request
How long it is kept The images are deleted automatically after 30 days unless the request has been retried. The prompt text is kept until the account is deleted. When the account is deleted the prompt record is removed, but the held images are not automatically deleted.
Saved Programme Designer answers and reviewsWhen and what

Only when a user chooses to save a Programme Designer answer or review.

The full answer or review text, up to 100,000 characters, with its findings and, for a saved answer, the question asked.

Who can read it
  • Programme leaders and co-leaders
  • Organisation administrators
How long it is kept Kept until the programme is deleted.
Opening text of Help and Programme Designer questionsWhen and what

For every question asked of the Help assistant or the Programme Designer.

The first 300 characters of the question, with the feature and time it was asked. Never the answer.

Who can read it
  • Help questions: the user who asked, and our platform administrators without the user identity
  • Help questions asked at least twice: other signed-in users, as popular questions, showing the text only, without the identity of who asked
  • Programme Designer questions: programme leaders and organisation administrators
How long it is kept Kept until the account is deleted.
Learner questions to the course AI tutorWhen and what

When a learner's question leads the course AI tutor to search or read the course.

The shortened text the tutor searched the course for and the name of the tool it used, with no learner identity. The learner's conversation is never stored.

Who can read it
  • The course owner
How long it is kept Kept until the course is deleted.
Course AI chat historyWhen and what

Whenever an author uses the AI chat in a course's editor.

Each author's AI chat for a course, saved as part of the course in the file _coursefoundry/chat/history.jsonl, with images removed.

Who can read it
  • The course owner
  • Organisation members who can read the course, for a course held by an organisation
  • Anyone with access to the author's connected GitHub snapshot repository, since the course's files are committed there
  • Anyone who copies the course files locally with cf clone
How long it is kept Kept until the course is deleted.

4. Third-Party Services (Sub-processors)

We use the third parties below to operate the platform. Each is listed with where it processes data and what it is used for; uses that apply only when you turn on a feature or supply your own provider key are listed separately. Every addition, removal or correction to this list is recorded in the change history on our Trust page.

Always used

SupabaseLocation USAPurpose and data

Database, authentication (including SAML single sign-on) and file storage for the whole platform

Data: Account details (name, email, username); Course, programme and file content; AI usage records and stored AI data; Sign-in and session data

Always

VercelLocation USA + EdgePurpose and data

Application hosting and serverless functions

Data: All request data, including IP address and the content of each request

Always

Web Analytics: page views and visit counts

Data: Pages visited; Referrer; Device, browser and country, derived from the request

Always

Speed Insights: page performance measurements

Data: Page URL; Performance timings; Device and browser type

Always

Retention: Vercel states that on the Hobby plan CourseFoundry uses, Web Analytics data is guaranteed to be kept for a 1-month reporting window, and that Vercel may store data for longer

Vercel states: On the Hobby plan, Web Analytics data is guaranteed to be stored and viewable for a 1-month reporting window, and Vercel may store data for longer. Source, checked 26 September 2026.

StripeLocation USAPurpose and data

Payment processing and subscription management

Data: Name and email; Billing address; Payment card details, entered directly with Stripe; Subscription and purchase history

Always

ResendLocation USAPurpose and data

Transactional email delivery

Data: Recipient email address and name; Email content

Always

Retention: Resend states it retains email data for 30 days

Resend states: Email data, including content, metadata, delivery events and logs, is retained for 30 days on all standard plans. Source, checked 24 September 2026.

CloudflareLocation Global CDNPurpose and data

Turnstile bot protection on sign-up, sign-in, password reset and enquiry forms

Data: IP address; Browser and TLS fingerprint; User agent

Always

jsDelivrLocation Global CDNPurpose and data

Loads the Mermaid diagram and Alpine.js interactivity scripts used by published courses, from the learner's browser

Data: IP address; User agent (browser type and version); Referring site (domain only); The script requested

Always

jsDelivr states: The CDN is operated by Volentio JSD Limited, a company registered in England and Wales. Source, checked 25 September 2026.

jsDelivr states: All CDN traffic is served by Cloudflare, Fastly and Gcore, which see the IP address and other information the browser sends. Source, checked 25 September 2026.

jsDelivr states: Non-aggregated usage data, which may include IP address, browser, referrer domain and requested URL, is kept until it is analysed and then deleted, unless it is used for security or to improve the service or the law requires longer; aggregated usage data is kept indefinitely. Source, checked 25 September 2026.

AnthropicLocation USA (data at rest); inference may run globallyPurpose and data

Default AI provider for AI Forge, chat, agent, workflows, the learner tutor and the Programme Designer

Data: Prompts, including course and programme content; Pasted images; AI responses

Always

Anthropic states: API inputs and outputs are deleted within 30 days of receipt, or kept up to 2 years if flagged for a usage-policy violation. Source, checked 24 September 2026.

Anthropic states: API inputs and outputs are not used to train its models by default. Source, checked 24 September 2026.

OpenAILocation Not stated by the providerPurpose and data

Search indexing of programme outcomes (embeddings), used for outcome search and benchmarking, on the platform account, whichever AI provider an organisation selects

Data: Programme outcome text

Always

Search indexing of course content (embeddings) and voice transcription, on the platform account, whichever AI provider an organisation selects

Data: Course content; Voice recordings for dictation and recordings

Always

OpenAI states: API data is kept in abuse-monitoring logs for up to 30 days and is not used to train its models. Source, checked 24 September 2026.

Google FontsLocation Not stated by the providerPurpose and data

Web fonts, loaded by the browser from Google Fonts on every page

Data: IP address; User agent

Always

Used only when you enable a feature or supply your own key

CloudflareLocation Global CDNPurpose and data

Serves the Font Awesome icon stylesheet (cdnjs) that courses built from the interactive R or Python template load in the learner's browser

Data: IP address; User agent (browser type and version); Referring site (R template pages only); The file requested

When you enable: Interactive R or Python course templates

jsDelivrLocation Global CDNPurpose and data

Loads the reveal.js slide library in an author's browser when a slide deck is previewed in the classic editor or the pop-out preview

Data: IP address; User agent (browser type and version); Referring site (domain only); The script requested

When you enable: Slide deck preview (classic editor and pop-out preview)

Loads the pdf.js library in an author's browser to read a PDF being imported

Data: IP address; User agent (browser type and version); Referring site (domain only); The script requested

When you enable: PDF imports

Loads the MathJax maths renderer in the learner's browser when a published course page contains mathematics

Data: IP address; User agent (browser type and version); Referring site (domain only); The script requested

When you enable: Mathematics in course pages

Loads the Pyodide Python runtime (Python template) and the Monaco code editor (R and Python templates) in the learner's browser, for courses built from the interactive R or Python template

Data: IP address; User agent (browser type and version); Referring site (domain only); The files requested

When you enable: Interactive R or Python course templates

jsDelivr states: The CDN is operated by Volentio JSD Limited, a company registered in England and Wales. Source, checked 25 September 2026.

jsDelivr states: All CDN traffic is served by Cloudflare, Fastly and Gcore, which see the IP address and other information the browser sends. Source, checked 25 September 2026.

jsDelivr states: Non-aggregated usage data, which may include IP address, browser, referrer domain and requested URL, is kept until it is analysed and then deleted, unless it is used for security or to improve the service or the law requires longer; aggregated usage data is kept indefinitely. Source, checked 25 September 2026.

Shields.ioLocation Not stated by the providerPurpose and data

Serves the "Built with Course Foundry" badge when an author previews the course README in the editor

Data: IP address; User agent (browser type and version); The badge requested

When you enable: Course README preview in the editor

Shields.io states: It does not store logs of visits or requests and uses no cookies. Source, checked 25 September 2026.

Shields.io states: It is hosted on fly.io, with Cloudflare for DNS and CDN services. Source, checked 25 September 2026.

webRLocation Not stated by the providerPurpose and data

Serves the webR runtime and R packages that courses built from the interactive R template load in the learner's browser

Data: IP address; User agent (browser type and version); Referring site; The files requested

When you enable: Interactive R course template

GitHubLocation USA (primarily)Purpose and data

Course snapshots, publishing via GitHub Pages and code repositories

Data: Course content; GitHub username and access token

When you enable: GitHub connection

Programme backups

Data: Programme content; GitHub username and access token

When you enable: GitHub connection

Sign in with GitHub, through Supabase Auth

Data: GitHub account name and email

When you enable: Sign in with GitHub

ZoteroLocation USAPurpose and data

Reference library sync

Data: Zotero user id and API key; Library collections and citations

When you enable: Zotero sync

OpenAILocation Not stated by the providerPurpose and data

AI features, when OpenAI is the selected provider or an author supplies their own OpenAI key

Data: Prompts, including course and programme content; Pasted images; AI responses

With your own provider key

OpenAI states: API data is kept in abuse-monitoring logs for up to 30 days and is not used to train its models. Source, checked 24 September 2026.

GoogleLocation Any country (Google states Gemini API data may be processed in any country where it or its agents operate)Purpose and data

Gemini AI features, when an organisation or author supplies its own Gemini key

Data: Prompts, including course and programme content; Pasted images; AI responses

With your own provider key

Export of lessons and slides to Google Drive, Docs and Slides

Data: Exported course content; Google account access token

When you enable: Google Docs export

Sign in with Google, through Supabase Auth

Data: Google account name and email

When you enable: Sign in with Google

Google states: Prompts and responses on paid-tier keys are not used to improve its products; free-tier prompts and responses are used to improve its products and may be read by human reviewers. Source, checked 24 September 2026.

YouTubeLocation Not stated by the providerPurpose and data

Plays a YouTube video that the course author chooses to embed in a course page, in the learner's browser

Data: IP address; User agent (browser type and version); The video requested

When you enable: Embedded YouTube videos

MicrosoftLocation The geography of the organisation's own Azure resourcePurpose and data

AI features routed to an organisation's own Azure OpenAI or Foundry deployment, authenticated with Microsoft Entra

Data: Prompts, including course and programme content; Pasted images; AI responses; Entra client credentials

With your organisation's own AI endpoint

Audit log export to an organisation's Azure Blob Storage or Log Analytics workspace

Data: Audit events, including user identifiers and actions taken

When you enable: Azure audit export

Microsoft states: Prompts and completions are not used to train its models, and Standard deployments process data in the geography the customer chose. Source, checked 24 September 2026.

ReplicateLocation Not stated by the providerPurpose and data

AI image generation for course media

Data: Image prompts written by the author

When you enable: AI image generation

Replicate states: Predictions created through the API are deleted after one hour. Source, checked 24 September 2026.

Replicate states: Its terms (section 5.2) grant it a licence to use customer data, including to train and generate customer derivative models. Source, checked 24 September 2026.

5. Your Rights

Under GDPR and applicable data protection law, you have the right to:

  • Access & portability (Art. 15, 20): Download all your data from Settings → Export My Data.
  • Erasure (Art. 17): Delete your account in Settings. What deletion removes, and what is kept and why, is listed below.
  • Rectification (Art. 16): Update your profile in Settings at any time.
Your account and the records that belong to itWhat happens RemovedDetails Account deletion is self-service in Settings and takes effect immediately in the live system. Your profile, any courses you created and their files, your AI usage records, captured prompts, Help and Programme Designer question records, saved Programme Designer answers and reviews you wrote, and the records of prompts held for image processing are removed at once. Two kinds of stored file are not removed from storage when the account is deleted: images held for deferred AI processing, and rendered course output.
Security and activity audit eventsWhat happens KeptDetails Kept as a security record, and the link to your account is removed. An event can still contain your email address (for example, invitation and module-invite events), your IP address and your browser details. Events in an organisation stay readable by that organisation's owners and administrators.
Programme change-log entriesWhat happens Kept with your account link removedDetails The author link is removed; the entry is otherwise kept in the programme's change history.
Beta feedback messagesWhat happens KeptDetails The feedback text is kept to improve the product, with your email address and username removed.
Database backupsWhat happens Kept in backups until they expireDetails Backups may still hold deleted data for up to 7 days, after which it is gone.
An organisation's view of a member who leavesWhat happens KeptDetails AI usage records and captured prompts made in an organisation stay visible to that organisation's owners and administrators after the member leaves, until the account or the organisation is deleted.

Enterprise customers can request a signed Data Processing Agreement (DPA). See our DPA template.

6. Contact

If you have questions about this privacy policy, contact us at john@simvirtua.com.