Attendance Tracker
Enter your roster and date range, pick your options, and download a polished Excel attendance sheet with formulas, dropdowns, and a summary — in under a minute.
What it does
Roster in any format
Type or paste names (one per line), use the structured table to add first name, last name, ID, and email separately, or upload a .csv file with a column-mapping step.
Smart date generation
Set a start and end date, pick which weekdays your class meets, choose weekly or biweekly frequency, and add skip dates for holidays. Or switch to manual mode and paste a custom date list.
Working Excel formulas
Every count column uses COUNTIF. The Attendance % column uses IFERROR to handle empty rows cleanly. All formulas recalculate the moment you fill in a status code.
Dropdown status codes
Each date cell has a data-validation dropdown listing your enabled status codes — P, A, L, E by default. Type the letter or pick from the list. Cells automatically change color.
Summary sheet
A second sheet shows each student's total attendance, per-code counts, Attendance %, and a color-coded status badge (Good, Watch, At Risk) based on configurable thresholds.
Privacy by design
Your roster never leaves your browser. All processing is client-side. The tool autosaves to localStorage and lets you export the config as JSON to reuse next term.
How to use Attendance Tracker
- 1Enter class details
Fill in the class name (required), instructor, term, meeting time, and location. These appear in the Excel header.
- 2Add your roster
Type or paste names, use the table to add IDs and emails, or upload a .csv file. The tool auto-detects columns and shows a preview before importing.
- 3Configure dates
Set a start and end date, choose which weekdays the class meets, and add any skip dates (holidays, breaks). Or switch to Manual Dates and paste a custom list.
- 4Pick options and download
Choose a template style (Standard, Simple, or Printable for B&W), toggle the summary sheet and notes column, then click "Download Excel." The .xlsx file opens in Excel, Google Sheets, or LibreOffice.
When to use this
Classroom teachers
A high school teacher sets up a MWF class roster for the fall semester. The download includes 60 date columns, color-coded cells for each attendance code, and a summary tab that flags students below 75%.
Sports coaches and club leaders
A soccer coach pastes 22 player names, picks Tuesday and Thursday practice dates, skips school holidays, and downloads a sheet to track who shows up each week.
Workshop and training organizers
A corporate trainer uses Manual Dates to list 8 specific workshop days spread across three months, then exports the config as JSON to reuse the same roster next quarter.
University TAs
A TA uploads a .csv export from their LMS, maps the Name and Student ID columns, and downloads a sheet pre-sorted by last name with ID and email columns included.
Common errors & fixes
- No dates generated after setting a range
- Check that at least one weekday is selected and that your weekday choices actually fall within the date range. For example, selecting only Wednesday for a one-day range that falls on a Monday produces zero dates.
- Excel opens with a "Repair" prompt
- This can happen when conditional formatting rules conflict. Try the "Simple" template style, which omits conditional formatting, to verify the base file is clean.
- Formulas show #DIV/0! in the Attendance % column
- This happens if the denominator is zero — usually when "Exclude Excused" is selected and all non-excused count cells are empty. The formula uses IFERROR so this should not appear in the generated file; if it does, check that your status codes include P, A, or L.
- CSV import assigns names to wrong columns
- Use the column-mapping step after upload to manually assign which CSV column maps to First Name, Last Name, ID, and Email.
Frequently Asked Questions
Does the generated Excel file work in Google Sheets?
- Yes. The .xlsx file opens in Google Sheets, Excel on Windows and Mac, and LibreOffice Calc. Formulas, dropdowns, and conditional formatting all work. Frozen panes and merged header rows render correctly.
Is my roster stored or sent anywhere?
- No. The entire tool runs in your browser. Your roster, dates, and settings are stored only in your browser's localStorage. Nothing is sent to any server.
Can I reuse the same setup next semester?
- Yes. Click "Export config" to download a .json file with your class details, roster, and all options. At the start of next term, click "Import config" to restore everything in one click. Update the dates and download a fresh sheet.
How many students and dates are supported?
- The tool warns at 200 students and 60 dates, but both are allowed. Performance depends on your browser. A 200-student × 60-date sheet generates in a few seconds on a modern laptop.
Can I add custom attendance codes?
- Yes. In the Options step you can add up to 3 custom codes with a letter, label, and color. Custom codes appear in the dropdown list in Excel and are counted in their own column.
What does the Summary sheet show?
- The Summary sheet lists each student with their total classes, per-code counts, Attendance %, and a status badge: Good (≥ 90%), Watch (75–90%), or At Risk (< 75%). Thresholds are configurable.
Can I print the sheet in black and white?
- Yes. Choose the "Printable" template style in Options. This removes color fills and optimizes the layout for B&W printing. Status codes appear as letters without color.
Related Tools
Resume Builder
Build an ATS-friendly one-page resume with live preview and PDF export — free, no signup, no data upload.
Invoice Generator
Create professional invoices with logo, tax calculations, and PDF download — free, no signup.
GPA Calculator
Calculate semester and cumulative GPA across 4.0, 5.0, and international grading scales.
Grade Calculator
Calculate your current course grade from weighted assignments or total points earned.