Track student attendance from CSV, email parents, and build an HTML dashboard
Go to WorkflowDescription
๐ Overview
Automatically monitors daily student attendance from CSV files, identifies absent students, sends parent email alerts via SMTP, calculates risk scores, and generates an interactive HTML dashboard โ all on a weekday schedule with no manual work needed.
โ๏ธ How it works
Schedule trigger โ runs MondayโFriday at 17:30
Data ingestion โ reads student_attendance.csv and filters to today's records only
Absence check โ splits students into Absent / Present branches
Contact merge โ matches absent students with parent data from student_contacts.csv
Alert logic โ calculates risk level, attendance %, consecutive streak, and trend (Improving / Stable / Worsening)
Parent email โ sends a colour-coded HTML alert via SMTP for each absent student
Dashboard builder โ generates dashboard.html with 5 tabs: Today, Weekly, Monthly, Full History, and At-Risk
Report update โ appends records to attendance_report.csv for historical tracking
๐ Setup steps
Upload student_attendance.csv to the n8n files folder
Upload student_contacts.csv to the n8n files folder
Create an empty attendance_report.csv in the n8n files folder
Add smtp_user in Settings โ Variables
Configure SMTP credentials in the Send Email node
Adjust the cron schedule if needed (default: 17:30 MonโFri)
๐ง Required CSV formats
student_attendance.csv
| StudentID | Date | Status | Class | Subject | Teacher |
|-----------|------|--------|-------|---------|---------|
| S101 | 12-01-2026 | Absent | Grade 6 | Math | Mr Singh |
student_contacts.csv
| StudentID | ParentName | Email | Phone |
|-----------|------------|-------|-------|
| S101 | Anita Kumar | [email protected] | +919999999999 |
๐ Dashboard Preview