Privacy

Short, plain, and written against what the code actually does. Where we cannot prove something from our own code, this page says so instead of promising it.

Who we are

LessonLayer is run by Greg Gorman, trading as LessonLayer ("we", "us"). We deal with customers by email only, at [email protected]; we do not publish a postal address.

When a university or college uses LessonLayer under an agreement with us, we process the teaching material its staff put in on its behalf and on its instructions: for that material the institution is the controller and we are its processor (the data processing agreement sets this out). For everything else on this page (access codes, balances and statements, our operational records and emails you send us) we are the controller.

What happens when you make a lesson

Module history

If you give a module a name, the service remembers which of our activities were in the lessons you downloaded for that module, so that a later lesson for the same module is not given the same activity by accident. What is kept, under your department's access code: the identifiers of those activities (for example ll-freud-models); a one-way hash of the module name (not the name itself); a short number-based identifier for each lesson the module plan covered (at most 20); and the time it was last updated. Nothing else: no lecture text, no lesson title, no key idea, no file name and no lesson label. It is kept in the same EU storage as your department's balance. At most 40 modules and 200 activity identifiers are kept per code. It is deleted when your department's access ends or the code is stopped, and you can clear one module's history whenever you like with "Forget this module's history" on the module page. It is not used for anything else. A single lesson uses the module history only if you type a module name.

Free trials

Asking for a trial. When you ask for a free trial on our website, the form sends your name, your email address, the subject you teach, and whether you ticked the optional box for LessonLayer news, to the founder's own email inbox. Our service does not store them: the email is the only copy. We use them to check your request and to send you a trial code by hand. We do not send automated emails, and we do not share your details with anyone.

Your trial code. A trial code makes one lesson. We keep a one-way hash of the code (never the code itself), the name we gave it (usually your name), when it was issued, when it expires, whether and when it was used, and whether its lesson was made. This record is kept in Cloudflare's EU region and is deleted 30 days after the code stops being usable: 30 days after it expires unused, or 30 days after its lesson's 24 hours end.

Your trial lesson. It is made the same way as a pilot lesson (see "What happens when you make a lesson" above), with these differences:

Who decides. For a trial you are not using LessonLayer under an agreement with your institution, so for the request, the trial record and your trial lesson we are the controller.

Remembering where a student was

A lesson remembers which page a student reached, which pages they have seen, whether they finished the core lesson and whether they opened Go deeper, so that they can carry on later: in the student's own browser on their own device (nothing about the student is stored or sent to us), or, in a SCORM package, in your VLE's own record.

Your department's AI balance and statement

Lessons are paid for from your department's prepaid AI balance, at the AI provider's cost with no markup. A lesson is charged when it is built and ready to use, whether or not it is downloaded; a lesson that fails or is blocked costs nothing. A lesson that needs the lecturer's decision first is charged when it is first downloaded, and costs nothing if it is not downloaded within 24 hours. For each access code we keep a ledger, found by a one-way hash of the code (the code itself is not stored). It holds the balance, the money set aside for lessons being made, running totals, whether the code has been withdrawn, and one statement line per lesson and per top-up: the date and time, a random lesson number, the number of AI calls and tokens, the provider's cost, what was charged, whether the download was described as "verified" or "lecturer-approved" and how many review items were kept as written. No names, no lesson content and none of your material. Statement lines are kept while your department has access and for 12 months after its access ends, then deleted automatically; the running totals are kept as long as we need them for our accounts. We also keep a list of these one-way hashes, each with the date it was first seen, so that our scheduled clean-up can find every ledger; a code's entry is deleted 12 months after its access ends, at the same time as its statement lines. The one extra request that plans a module appears on the statement as its own line ("module plan") with its cost. It is not charged.

Our operational records

To run the service we keep counts, error codes, timings and costs, per day and per department (the department's name): for example "12 lessons, 1 failed, average 4 minutes, 38p". They never contain lesson content, your material, an access code or anyone's name, and they are deleted after 30 days. When lessons fail in a burst, or a department's balance runs low, the service emails these counts to the founder's own email address. These alert emails hold counts and balances only (a low-balance alert names the department), never lesson content or an access code, and are kept in the founder's mailbox for up to 90 days. Cloudflare also offers a live log view of requests, which we open only to investigate a problem and which is not stored; it shows request headers, including the access code, so we never save or share it. Free-trial requests and trial lessons are counted under the name "Free trial", never the person's name or email address.

Who else handles data, and where

Your students

This site

This site currently runs no analytics and sets no cookies. The build only includes an analytics script once one is configured, and none is configured on this build.

The site sets no cookies. Its pages and scripts are served from lessonlayer.co.uk through Cloudflare.

Why we use this data (lawful basis)

Your rights

Under UK data protection law you can ask us for a copy of personal data we hold about you, ask us to correct or delete it, ask us to restrict or stop using it, and object to our using it. Email [email protected] and we will reply within one month. For teaching material processed on your institution's behalf, we will also involve your institution. If you are unhappy with how we handle your data, you can complain to the Information Commissioner's Office (ico.org.uk/make-a-complaint, 0303 123 1113), though we would like the chance to put it right first.

Please do not upload personal data

LessonLayer is for teaching material. Do not upload files containing student personal data, marks, or anything else about identifiable individuals, and check your speaker notes before including them.

Contacting us

If you have a question about how LessonLayer handles your material, email us at [email protected]. If you write to us, we hold that message and your address so that we can reply to it.

Last updated: 10 October 2026.