Education Data Architecture (EDA)
Education Data Architecture (EDA) is the open-source managed package that extends standard Salesforce objects to support higher education and K-12 use cases.
Definition
Education Data Architecture (EDA) is the open-source managed package that extends standard Salesforce objects to support higher education and K-12 use cases. Maintained by Salesforce.org and the higher-ed community, EDA adds the data model, page layouts, validation rules, and triggers that institutions need to track students, courses, programs, affiliations, and relationships. Until 2023, EDA was the foundation for Salesforce Education Cloud; the rebuilt Education Cloud now uses dedicated platform objects instead, but EDA remains widely deployed and continues to receive updates.
EDA installs into a standard Salesforce org and adds custom objects (Course, Course Offering, Course Connection, Education History, Affiliation, Behavior Involvement, Term, Plan Requirement, and others), along with extensions to Contact, Account, and Opportunity. The package is free, version-controlled on GitHub, and follows a release cadence aligned with the Salesforce platform releases (typically three major releases per year). Institutions either install directly from the AppExchange or pull from the GitHub repo for self-managed deployments.
What EDA adds to a Salesforce org
Custom objects EDA introduces
EDA''s data model includes Course (a class offering), Course Offering (a specific term''s section), Course Connection (a student''s enrollment in a course offering), Term (academic terms), Education History (degrees earned), Plan Requirement (program requirements), and Affiliation (a Contact''s relationship to an Account). These extend the standard Contact and Account models to support the relational complexity of an academic environment.
The Contact and Account extensions
EDA does not just add objects; it extends Contact and Account. Contact gets fields for academic-specific data (Birthdate, Pronouns, Citizenship). Account gets fields for institutional information (Account Record Types: Educational Institution, Department, University Department). Affiliation links Contacts to Accounts in multi-faceted ways (a student is affiliated with their university; an alumnus is affiliated with their employer; a parent is affiliated with their child''s school).
Triggers, validation rules, and managed logic
EDA includes Apex triggers, validation rules, and managed logic that maintain data integrity. Examples: when a Course Connection is created, automatically update the related Student''s Total Credits Earned field; when an Affiliation is set to Primary, ensure no other Affiliations for the same Contact are also Primary. These triggers are part of the managed package and update with each EDA release.
Version compatibility and the upgrade cadence
EDA releases roughly every quarter, aligned with Salesforce''s seasonal releases (Spring, Summer, Winter). Each release adds features, fixes bugs, and sometimes updates the data model. Upgrades from a Salesforce.org-maintained package are usually low-risk; the community maintains backward compatibility. Major changes (like the 1.x to 2.x version line) involve more careful migration.
Customization within EDA''s framework
EDA includes a hierarchy of settings that control its behavior: EDA Settings, Affiliation Mappings, Reciprocal Settings (for relationship roles). Admins customize these without modifying the managed package source. Heavy customization beyond the configuration settings usually involves adding fields, building Lightning Components, or wrapping EDA logic in custom Apex; the managed code itself stays intact.
EDA versus the Rebuilt Education Cloud
The 2023 Rebuilt Education Cloud introduces dedicated platform objects (Student, Educational Institution, Education Program) that overlap with EDA''s custom objects. The two models are incompatible: an org runs EDA or runs the Rebuilt Education Cloud, not both for the same use cases. Existing EDA orgs face an eventual migration; Salesforce has not announced a forced timeline, but new institutions default to the Rebuilt platform.
Open-source and community contribution
EDA is open-source: the GitHub repository accepts pull requests, the issue tracker is public, and the higher-ed community contributes regularly. Institutions can fork EDA, submit fixes back upstream, or contribute new features. This is unusual for Salesforce managed packages and reflects EDA''s roots as a community-maintained product.
How to install and configure EDA in a Salesforce org
Installing EDA is a 30-minute task; configuring it for your institution takes weeks. The package itself is free; the implementation labor is the real cost. Most institutions partner with a Salesforce.org-certified implementation partner.
- Install EDA from the AppExchange or GitHub
For most institutions: AppExchange, search for EDA, click Get It Now, install in production or sandbox. For organizations that need source control or self-managed deployments: clone the EDA GitHub repository and deploy through the Salesforce CLI.
- Configure EDA Settings
Setup, then EDA Settings. Configure default settings for Affiliations, Course Connections, Term Defaults, and Behavior Involvement. These defaults drive trigger behavior; review them before letting users in.
- Set Record Types on Account and Contact
EDA expects specific Account Record Types (Educational Institution, Department, University Department, Administrative Unit, and so on) and Contact Record Types (Student, Faculty, Staff, Alumni). Create these or use the EDA-provided ones. Assign Page Layouts per Record Type.
- Build out the data model
Add custom fields specific to your institution: a Major field on Contact, a Department field on Account, financial aid fields on Opportunity. Test that EDA''s triggers continue to work with your additions.
- Migrate data
Bring in current students, faculty, courses, and terms. Use Data Loader or third-party ETL. EDA''s data model requires careful sequencing (Account, then Contact, then Affiliation, then Course, then Course Offering, then Course Connection); load in the right order.
- Train and roll out
Train recruiters, registrars, advisors, and administrators on EDA-specific workflows. The Power of Us Hub and Salesforce.org Higher Ed Summit are great training resources.
Easiest path for most institutions. Salesforce.org maintains updates.
For organizations needing source control. Pulls from the EDA repo and deploys via CLI.
In-app configuration without changing managed-package source. Covers most institutional differences.
Configures how Affiliation roles map (Student of, Parent of, Employer of). Set once per role pair.
- EDA''s managed package code cannot be edited directly. Customizations live alongside the package, not inside it. Plan custom logic with this constraint in mind.
- Upgrades sometimes change data model behavior. Read EDA release notes before applying updates to production; some changes need configuration follow-up.
- EDA and the Rebuilt Education Cloud are mutually exclusive. Choose one architecture per org; mixing them produces confusing data.
- Record Type assignment is fundamental. Forgetting to set Record Types on Accounts and Contacts breaks half of EDA''s downstream logic.
Trust & references
Straight from the source - Salesforce's reference material on Education Data Architecture (EDA).
- Salesforce Education Data ArchitectureSalesforce.org
About the Author
Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.
Test your knowledge
Q1. What does Education Data Architecture represent in the Salesforce Platform?
Q2. Who can benefit from understanding Education Data Architecture?
Q3. How does Salesforce's multi-tenant model affect Education Data Architecture?
Discussion
Loading discussion…