Talk to us about your school management software project.
Tell us your school structure, student roll size, compliance jurisdiction, and what your current system can't do. We'll scope the right platform and give you a fixed cost.
Managing student records, attendance, and grades across spreadsheets and disconnected systems while parents email teachers directly for updates?
Running a network of schools where each campus uses a different system and getting a consolidated view of enrolment or attendance requires a manual data pull every time?
Custom school management software built for your enrolment workflows, grading model, compliance requirements, and parent communication -- not built for the generic school that doesn't exist.
100+ products shipped since 2019. We've built school management systems for individual campuses, school networks, and multi-country education groups across K-12 and early childhood.
Student enrolment, records management, and annual re-enrolment workflows
Daily and period-based attendance with parent notifications
Grade book, weighted grade calculation, and automated report card generation
Parent and guardian portal with grade access, fee payment, and direct messaging
RaftLabs builds custom K-12 school management software (SMS/SIS) for individual schools, school networks, and education groups. Custom school management systems cover student enrolment and registration, daily and period-based attendance tracking, grade book and report card generation, timetabling and scheduling, parent and guardian portals, fee management, and government compliance reporting. Custom school management software is appropriate when your curriculum structure, grading model, or compliance requirements don't fit generic SaaS tools. Most projects deliver in 12--16 weeks at a fixed cost with full source code ownership.
A state school in Australia has different attendance rules, report card formats, and compliance obligations than an independent school in the UK or a charter school in the US. Off-the-shelf school management platforms make design decisions that fit no one particularly well: grading schemas they can't configure, compliance reports they don't generate, enrolment workflows that don't match your intake process, and per-student pricing that compounds as your rolls grow.
Custom K-12 school management software is built around your curriculum structure, your grading model, your compliance jurisdiction, and the way your school actually operates.
Digital enrolment forms for new and returning students, document collection and verification workflows, and student profiles with full academic history. Medical information and allergy records with staff alert access configured by role. Sibling linking for families with multiple children enrolled, with household-level communication preferences. Annual re-enrolment workflow with pre-filled data from the previous year -- parents confirm rather than re-enter, reducing completion rates.
Bulk import from a previous student information system (SIS) for schools migrating to the new platform. Common migration sources include PowerSchool, Skyward, and Infinite Campus, which each export in specific CSV formats or support REST API extraction. We scope the migration strategy during discovery: field mapping, data cleansing for inconsistent historical records, and a parallel-run period where both systems operate before cutover.
FERPA compliance applies to all student records. For students under 13, COPPA restrictions govern any system features with online behavioural tracking or personalisation components. We document the FERPA access controls for each user role -- teachers, administrators, and support staff have different permissible access scopes -- and include the required parental consent flows for any data sharing that falls outside the school's standard educational function. IEP (Individualized Education Program) and 504 plan document management is included where required, with appropriate access restrictions so only designated staff with a legitimate educational interest can view plan details.
Daily and period-by-period attendance entry for class teachers and subject teachers, with mobile-friendly mark roll interface for teachers who use tablets in class. Automated attendance capture via RFID card scan or QR code scan at school gates -- students tap or scan on arrival, the system marks them present and timestamps the event. RFID integration uses HF (13.56 MHz) MIFARE cards with compatible fixed readers or mobile handheld readers for bus or excursion scenarios.
Absence notification sent to parents via SMS or push notification as soon as a student is marked absent, with a parent response option for pre-authorised absences. Late arrivals are recorded separately from absences and noted on the day's attendance record. Attendance reporting by class, year group, and individual student across any date range -- exportable for state reporting requirements in CEDS (Common Education Data Standards) or SIF (Schools Interoperability Framework) format where mandated.
Threshold alerts for chronic absenteeism trigger automatically when a student's attendance falls below configurable thresholds (typically 90% or below, which flags chronic absenteeism risk in most US state frameworks). Pastoral or welfare staff receive the alert with the student's attendance history so they can act before the problem reaches a reportable level. Attendance data feeds directly into state compliance reports -- eliminating the manual extract and reformat step that typically adds hours to each reporting period for administration staff.
Teacher mark entry by subject and assessment type with configurable assessment weightings per your school's curriculum structure. Weighted grade calculation applies the weighting formula you define -- for example, 30% formative assessment, 40% summative, and 30% examination -- and recalculates the course grade automatically as new marks are entered. The system supports percentage, letter grade, GPA (on 4.0, 5.0, or 7.0 scales), attainment descriptors (Working Below / At / Above Grade Level), or narrative-only grading depending on the year group and subject.
Automated report card generation at the end of each term populates the student's results, attendance record, and teacher comments into your school's report card template. PDF generation applies your school letterhead, branding, and layout. Teacher comment fields support free text entry with a configurable minimum character count and a generative AI comment assistant (optional) that generates a draft comment from structured performance data that the teacher then edits and approves.
Grade distribution reporting for department heads shows result spreads by class and year group, flags outliers, and supports curriculum review discussions. Parent access to individual student grades is configurable -- some schools provide real-time grade access through the guardian portal while others restrict access to term-end report cards only. Both models are supported. The gradebook also exports in the format required by your state's reporting system, removing the end-of-year data extract and reformatting task from your administration team.
Class schedule building with conflict detection across teachers, rooms, and student groups. The timetabling engine applies constraint satisfaction to prevent the most common errors: a teacher assigned to two classes simultaneously, a room double-booked, a student group scheduled for two subjects at the same period, and specialist spaces (science labs, art rooms, gymnasiums) assigned without checking capacity or equipment requirements.
Teacher allocation to periods applies subject qualification matching -- the system flags when a teacher without the required subject qualification is proposed for a class, and prevents scheduling a teacher above their contracted teaching hours per week. Room assignment tracks specialist equipment requirements per room type and applies clash prevention automatically.
Bus routing for school transport is included where required. We integrate with the Google Maps Distance Matrix API to calculate optimised bus routes and stop sequences based on enrolled students' home addresses, minimising total route distance and journey time within the driver schedule and bus capacity constraints. This optimisation is run at the start of each school year when enrolment is confirmed and re-run when significant address changes occur.
Exam schedule management handles the additional complexity of exam season: invigilator assignments, room capacity constraints for exam conditions, clash detection for students sitting multiple exams, and seating plan generation per examination room. Schedule publishing to teacher, student, and parent portals so every stakeholder has the current timetable in one authoritative place, not in a PDF emailed three weeks ago.
Web and mobile portal giving parents access to their child's attendance records, grade results, fee statements, and payment history. Portal access is secured with two-factor authentication -- parents verify identity via OTP SMS or an authenticator app -- which is particularly important when the portal provides access to sensitive student records and financial data.
Direct messaging to the class teacher or subject teacher without going through a school email chain. Message threads are stored against the student record so any staff member handling the account has context for prior communications. School announcements and event calendar with RSVP tracking for school events, excursion consents, and parent-teacher conference booking.
Absence reporting by parents before the school day starts -- parents submit the reason for absence through the portal, the attendance system marks it as authorised, and the class teacher sees the pre-authorised absence when they take the roll. This eliminates the phone call volume to the front desk every morning. Push notifications for key events are configurable per parent: absence alerts, grade releases, fee due dates, school closures, and emergency broadcasts. FERPA requires that portal access is strictly limited to the student's own data -- the authentication and data access layer enforces this at the database query level, not just the UI, so a parent cannot access another student's records through API manipulation. For families with multiple children enrolled, each child's data is displayed under the same login with explicit per-child data separation.
Fee schedule configuration by year group, fee type, and payment period. Tuition, activity fees, excursion fees, and technology levies are configured with their own due dates, instalment options, and concession rates. Online payment is processed via Stripe for US and international clients, or via local payment gateways (Eway, Westpac PayWay for Australian schools; Sage Pay for UK schools) with receipt generation on payment and automatic ledger reconciliation.
Outstanding fee tracking generates an aged receivables view with days overdue per account and per fee category. Automated reminder sequences run before due dates (7-day and 3-day reminders) and after (3-day, 14-day, and 30-day overdue escalations) with message content and channel configurable per reminder step -- SMS for urgent reminders, email for standard notifications. Direct debit authorisation collection for maintenance contract families eliminates the manual payment chase entirely for those accounts.
Government compliance report generation covers the formats specific to your jurisdiction. For US schools, this includes CEDS (Common Education Data Standards) formatted enrolment and attendance exports for state education agencies, and SIF (Schools Interoperability Framework) compliant data exchange for districts participating in the SIF standard. For Australian schools, ACARA enrolment census, My School reporting data, and NAPLAN registration exports are included. UK schools receive DfE census data in the XML schema required for statutory submissions. Multi-school network reporting aggregates enrolment, attendance, and financial data across all campuses for the network administration team, with campus-level drill-down available for site-specific reporting.
Frequently asked questions
Yes. Multi-campus school management is a common requirement. We build network-level administration so a central team can view consolidated enrolment, attendance, and compliance data across all campuses, while each campus retains its own administration interface, staff access, and reporting. Campus-level data stays fully separate for day-to-day operational use; network-level reporting aggregates across all campuses for the group's administration or board.
The data architecture typically uses a multi-tenant model where each campus is a separate tenant sharing the same application infrastructure but with strict data isolation at the database row level. Network administrators have cross-tenant read access for reporting; campus administrators see only their own campus data. Staff accounts are campus-scoped by default, with explicit cross-campus access grants for staff who work across sites.
Compliance reporting is generated per campus in the format required for each campus's jurisdiction -- which matters for school groups that operate across state or national boundaries where the compliance reporting format differs. The network reporting layer aggregates the figures the group needs (total enrolment, average attendance rate, fee collection rate) across all campuses in a single dashboard view. We have built this architecture for school groups ranging from two campuses to large regional networks with different year-level structures and grading schemas at each site.
The parent portal is a web and mobile interface for guardians secured with two-factor authentication. Access is tied to the student record at the database level -- parents see data only for their own children, enforced by the data access layer rather than relying on UI-level restrictions alone. This is a FERPA requirement: schools are responsible for ensuring that unauthorised disclosure of student educational records does not occur through technical vulnerabilities.
Standard access includes: attendance records with absence history and authorised/unauthorised status, grade results and report cards when published, fee statements and payment history with online payment capability, school announcements and event calendar with RSVP and excursion consent forms, and direct messaging to the class teacher or subject teacher. Parents can report absences through the portal before the school day, which pre-authorises the absence in the attendance system before the class roll is taken.
Access permissions are configurable per feature and per school. Common configurations include real-time grade access (parent can see marks as they are entered) versus term-end access only (marks are hidden until the report card is published), and whether direct parent-to-teacher messaging is open or requires a teacher to initiate. For schools with custody arrangements affecting which guardians can access which data, the student record supports multiple guardian accounts with configurable access scopes and communication preferences per guardian. Push notifications for key events are configurable by the parent -- so a parent who wants every notification and one who wants only critical alerts can both have the experience they prefer.
Yes. School management software and a learning management system serve different functions -- the SMS/SIS manages the student record, attendance, and administration; the LMS manages learning content and assessment. We build integration between the two so student enrolment data flows automatically into the LMS when a student is enrolled or moves class, single sign-on works across both systems, and reporting can consolidate data from each.
Integration with established LMS platforms uses their standard APIs: Moodle via REST API, Canvas via the Canvas LMS REST API, Google Classroom via the Google Classroom API, and Schoology via its REST API. LTI (Learning Tools Interoperability) is the standard protocol for embedding LMS tools within the SMS interface where a unified view is needed.
Where the LMS exposes assessment data via its API -- Canvas grades, Google Classroom assignment submissions -- we can surface that data in the SMS gradebook to give teachers and administrators a consolidated view. The reverse flow is equally important: class rosters created in the SMS flow to the LMS automatically so teachers do not maintain two systems with separate enrolment lists. If you are building both the SMS and the LMS together, we scope and build them as an integrated system from the start rather than integrating two independently built platforms after the fact -- which avoids the most common source of data consistency issues between the two.
A core school management system covering student enrolment, attendance tracking, grade book, report card generation, and a parent portal typically runs $30,000--$70,000 and delivers in 12--16 weeks. This covers a single jurisdiction and one campus. A full-featured platform with multi-campus network management, timetabling, fee management, compliance reporting, RFID/QR attendance integration, bus routing, and mobile apps for teachers and parents typically runs $70,000--$150,000.
Cost is driven by several factors: the number of modules required, the compliance jurisdiction complexity (a system serving a single US state's reporting requirements is simpler than one serving three countries with different data formats), the integrations required (SIS migration from PowerSchool or Skyward adds to the scope), and whether you need native iOS and Android apps for teachers and parents or a mobile-responsive progressive web app.
For school networks building a multi-campus platform from scratch, custom development almost always costs less than a commercial SaaS platform at 2,000--10,000+ students over a 5-year horizon, while delivering a system that matches your curriculum structure and compliance requirements exactly rather than a platform configured to approximate them. We scope every project before pricing it -- the scope document specifies every module, every integration, and every compliance report before development starts so there are no change-order surprises.
What clients say
Three-year average engagement. Founders and operators describing the work in their own words. No marketing varnish.

RaftLabs has been an exceptional partner. From the start, they became more than just a service provider, they embraced our vision with their expertise and dedication.
01 / 02
Tell us your school structure, student roll size, compliance jurisdiction, and what your current system can't do. We'll scope the right platform and give you a fixed cost.