Education & EdTech// definition

Directory information is a per-student flag your code has to honour

In short

Directory information is the part of a student's record an institution has designated as releasable without consent — commonly name, enrolment status and dates of attendance. Any student or parent may opt out. So it is not a policy paragraph but a mutable per-student flag with an effective date, read at render time by every surface that emits student data.

Key takeaways

  • The designated list belongs to the institution, not the regulation. It is per-tenant configuration you store and version.
  • The opt-out is mutable, dated and often partial. A boolean on the student row expresses none of the three.
  • Filter on the read path. Filter at import time and every cache, index and export drifts silently out of date.
  • An export outlives the flag that produced it: a yearbook file cut in February governs a book that circulates for years.

Directory information is the subset of a student's education record an institution has designated as releasable without prior consent — typically name, enrolment status, dates of attendance and participation in activities. Any student or parent may opt out, and the opt-out is the part products get wrong.

This is an engineering reading of a legal category, not legal advice. The list, the notice and the opt-out window belong to the institution and its counsel, and they change — confirm the designation against the school's published annual notice. BuildspaceLabs holds no privacy certifications.

The list is designated, which makes it configuration

FERPA lets a school decide which elements it treats as directory information and publish that decision annually. There is no fixed list, so two districts running the identical product designate differently. Hard-code the fields and you have hard-coded one customer's policy.

  • Store the designation per tenant, versioned. You will be asked which version was in force on the day something was published.
  • Refuse authentication identifiers. Anything that alone opens a door into records does not belong in a list releasable without consent.
  • Treat photographs as their own element. Products that fold faces and names under one toggle are the ones that get complaints.
  • A vendor rendering these surfaces stands in the school's shoes — the footing the school official exception provides.

Directory information stays inside the education record. It is not data that has left the boundary, only data with a different disclosure rule, keeping the classification in where the education record starts and stops.

The flag, and the fields it needs

Most implementations reach for a boolean on the student row. It cannot express a partial opt-out, cannot say what was true last March, and cannot be reconciled with a signed form in a drawer.

FieldExampleWhy it exists
student_id4471902The roster sync's identifier, not a display name
scopename, photo, honoursOpt-outs are often partial: a name in a programme, no face online
statusopted_outThree states. 'Never asked' should block publication
effective_from2026-09-14Shows earlier renders were not wrong retroactively
effective_tonullOpt-outs get withdrawn; an interval answers any date
sourcesigned form, portal toggleA toggle with no provenance is not evidence
The directory opt-out record, field by field

Every outbound surface reads it at render time

The failure is rarely the flag. It is that the flag is read once, when data enters some other system, and never again. Import-time filtering filters a snapshot, and from that instant the copy is stale.

Outbound surfaceHow the opt-out gets lostRender-time rule
Public directory pageCached at the CDN edge before the changePurge by student key on write; TTL in minutes
Campus app people searchIndex rebuilt nightly from an unfiltered dumpPut the flag in the index; filter at query time
Mail merge and newslettersA CSV pulled a fortnight before the sendRe-resolve recipients at send time
Yearbook and programme exportsOne export, typeset months laterStamp generated_at and an expiry; refuse expired files
Class lists in a third-party toolRostered once, then owned elsewherePush suppression on change; verify it landed
Photo galleriesImages tagged with students who later opted outUnpublish on flag change rather than untag
Where an opt-out gets lost, and the read-path rule that stops it

The check that finds the surfaces you forgot

  1. Enumerate everywhere student-identifying data leaves: pages, search indexes, exports, webhooks, push payloads, third-party rosters, print jobs. The forgotten ones are print and whatever marketing owns.
  2. For each, record the gap between when the data is read and when a human sees it. Any gap longer than your propagation target is a violation waiting for the right student.
  3. Take every student whose flag changed in the last 30 days and search those surfaces by name and identifier. Do it by hand once; the misses tell you what to automate.
  4. Move the filter into the read path and set a propagation target with a number in it: live surfaces within 15 minutes, regenerated exports within 24 hours, alerting on a miss.

Read-path filtering costs more in the first sprint and less in every one after, because a new surface inherits it — a constraint we push into the data model early during MVP and product builds.

Where this sits next to consent

Directory information is a disclosure rule, not a consent mechanism, and the two get conflated around younger pupils and photographs. Where a product is aimed at children rather than merely used by them, publication interacts with declaring an app for children, and collection beyond the designated list needs verifiable parental consent. The silo sits under student data privacy, engineered, inside our education and edtech work.

Frequently asked questions

Short answers to the follow-ups this page tends to raise.

What is directory information under FERPA?

It is the category of education record an institution has designated as releasable without prior consent, published in an annual notice to families. Common designations include name, enrolment status, dates of attendance and participation in activities. The list is the school's to set, so verify it against that school's current notice.

Can a school publish a student's name and photograph on its website?

Only if both elements sit in that school's designated list and the student has not opted out. Photographs are frequently designated separately or left out, because families treat a face on a public page differently from a name in a programme.

What happens if a parent opts out halfway through the year?

The opt-out applies from its effective date forward, so live surfaces stop showing the student and later exports exclude them. Material already printed is not retroactively unlawful, but you need dated records of which flag was in force when it was produced.

Does the opt-out apply to a class list shared with a third-party tool?

Yes, and this is where most systems break. Another vendor now holds a copy your flag no longer governs, so the obligation is met twice: push a suppression on change, and hold that vendor to acting on it contractually.

  • FERPA
  • student data
  • consent
  • privacy engineering
// shipped work

The work behind this page

Builds from our portfolio that this page draws on.

Working on something in this space?

Tell us where you are in a sentence or two. We'll tell you honestly whether we're the right team, and what a sensible first slice of the work looks like.

Start the conversation