The system most students ignore until it bites them
Most high schoolers don't have a real tracking system. They have a folder of loose papers, maybe a half-used planner from August that they abandon by October, and a Google Calendar they check exactly once before missing three deadlines in a row. I built a simple journal tracker for my kids a few years back, not because I wanted to be controlling, but because watching them scramble through Google Classroom at 11:47 PM on a Sunday nights was painful. The core idea is stupidly basic: every assignment, project, study session, and deadline goes into one living document that you update the same day you learn about it. Start with a Google Sheet or a Notion database. Pick one. Don't overthink it. Here is what the columns should look like, and I mean this literally, not as a suggestion: Date Assigned - When the teacher posted it. Not when you think about it, the actual date.
Subject - Math, English, Science. Keep it consistent so filtering works later. Assignment Title - Be specific. "Essay" is useless. "Compare and contrast essay on Gatsby, due 10/15" is not. Due Date - Obviously, but include time if your school uses a portal with specific drop-off windows.
Status - Not Started, In Progress, Submitted, Graded. Grade - Fill this in after you get it back. This column is where the truth lives. Notes - Any clarifications, partial credit warnings, teacher emails, whatever.
Get the Full Details

I learned the hard way that status should not just be "done" or "not done." I had a student who marked three assignments as "Submitted" because they turned in the work, never checked Google Classroom, and got zero feedback for two weeks. The status should really be four states, not three. Submitted doesn't mean graded. Graded means you have the number and you can learn from it. Here is the part nobody tells you about these trackers: the entry process matters more than the spreadsheet itself. If it takes more than 90 seconds to add an assignment, nobody will use it. I watch kids spend twenty minutes color-coding a Notion page with fancy templates and then never open it again. That is not a tracker. That is a decoration. Make it take forty-five seconds or less to log something. One row. Four fields. Done. One edge case that cost me three weekends of frustration last year: group projects. Every student tracker template I found either ignored them completely or made them so complicated they were never used. The fix was simple but almost counter-intuitive. For group work, I put the individual member's tasks as sub-rows under the main project row. Each person gets their own line with their name in a prefix. So it looks like:
Research - Sarah - Due 10/12 Presentation Slides - Marcus - Due 10/14 Conclusion Section - Sarah - Due 10/14
This way the group project still shows up once in the main view, but each student's pieces are traceable. The alternative is three separate entries for one project, which just duplicates noise. I tried the alternative. It was messy within a week. Another thing that feels wrong but is actually important: you need to log study sessions, not just assignments. Most trackers only capture deliverables. That leaves a blind spot. If your kid has a big exam coming up, the tracker tells you nothing about whether they actually prepared for it. Adding a "Study Session" entry type solves this. Date, subject, topic covered, duration, and a quick rating of how productive it was. Five fields, thirty seconds. After a month of this, the pattern of procrastination becomes obvious without any conversation. There are free tools that do some of this out of the box. Trello boards, Notion templates, even Google Calendar with color-coded events. The problem with all of them is that they were designed for a different user than a sixteen-year-old. A Trello board requires drag-and-drop literacy that half the student population does not have. Notion templates assume you enjoy reading documentation. Google Calendar hides assignments inside a schedule designed for birthdays and lunch periods. A dedicated spreadsheet or database cuts through all of that in about five minutes.

If you want to download a starting template, search for "high school assignment tracker spreadsheet" on Google Sheets community templates, or I can point you to a straightforward one I put together. It has the columns I listed above, conditional formatting that turns the row red forty-eight hours before a due date, and a summary tab that auto-calculates weighted averages by subject. The link is in the resources section below. It is not fancy. It does not have reminders built in. It is a tracking tool, not an AI assistant, and treating it like one saves you from disappointment. Here is a common mistake: people try to migrate old grades into the tracker retroactively. Do not do this. It takes an afternoon, nobody finishes it, and the data ends up half-right, which is worse than missing. Start the tracker fresh and accept that you will have gaps in the historical record. What matters is the current cycle, not last semester's essay grade. Another limitation worth stating plainly: this system only works if someone checks it weekly. A tracker that sits untouched for six weeks is worse than nothing because it creates a false sense of organization. Set a recurring Sunday night check-in. Fifteen minutes. Review upcoming deadlines, update statuses, log any study sessions from the week. That is the maintenance cost. Anything less and the data degrades. Anything more and you are micro-managing instead of tracking.
I also recommend keeping the "Notes" column lean. I see a lot of tracker templates encourage long-form journaling in the notes field. That turns a spreadsheet into a diary, and diaries are not tools for accountability. Three sentences max per assignment note. If you need more space, that belongs in a separate document, not jammed into a cell next to a due date. The weighted average calculation is the most useful feature of the whole setup, and also the easiest to break. Make sure the formula accounts for missing grades as zeros, not as blank cells that the average function ignores. A blank cell in a grade column changes the average in a way that looks better than reality. I have seen parents and students convince themselves they are doing fine because the tracker auto-calculated an average that excluded five incomplete assignments. The real average includes them. Configure the formula accordingly. If the spreadsheet approach feels too manual, Notion is a reasonable alternative, but only if you use a database view with a simple template. The moment you add relations, rollups, and linked databases, you have spent more time building the tool than you will ever spend using it. I watch this happen constantly. The Notion page becomes a piece of custom software development that nobody maintains. Keep it dumb. Keep it fast.
The tracker itself does not improve grades. It improves visibility. That is the entire value proposition. You cannot fix what you cannot see, and high school assignments are invisible until the day they are due. Once you have a single source of truth, the rest is just discipline. Some weeks you will maintain it religiously. Other weeks it will go a month without an update. That is normal. The point is that when you come back to it, everything is there, including the stuff you forgot you were supposed to do.

Where to get started today
Open a new Google Sheet. Create the seven columns I listed. Add three assignments from this week as test entries. Set up a conditional formatting rule that highlights rows red when the due date is within two days and the status is not "Submitted" or "Graded." That is it. You now have a working tracker. The rest is habit. If you want the template I mentioned, you can grab it here: High School Journal Tracker Template. It is free, no account required, and it is the bare minimum version. The expanded version with study session logging and semester projections is also available for those who want it.