Reference
Statuses, rules & glossary
The detail behind the guides: how a mark moves through the system, every status and what it means, the rules and limits, and what to do when something looks wrong. Read the lifecycle once and most of the rest becomes obvious.
Lifecycle of a mark
- DraftThe tutor is marking. Kept in their browser for 12 hours so a closed tab doesn't lose it. Nothing is sent anywhere.
- SubmittedOne record per student, each with a revision number, plus who taught. Lateness is fixed at this moment and never recalculated. The class waits on the campus count.
- Campus countIn-person and online totals plus the tutor pair, entered without sight of the tutor's marks. The tutor always goes first: a class reaches the Campus board only once a roll is in.
- ComparisonIn-person, online, the primary tutor and, where either side named any, the set of secondary tutors. Absent is not compared. It runs the moment either side submits.
- Agreement → ApprovedQueued for the CRM. No person approved it.
- Disagreement → back to both sidesEach side is told exactly which fields differ, phrased for them. Either can move. If the tutor changes the roll after a comparison and it still differs, or amends a roll that had already agreed, the standing count is set aside and the class goes back to Campus for a fresh one. An amendment that matches the standing count approves at once. There is no round limit and no automatic escalation; an admin can resolve a stuck class with a recorded reason.
- MarkedEvery student's mark written to the CRM. HubSpot writes are read back to confirm them. Every attempt is kept for 30 days and visible in Trace.
Every status
A class, on cards and in search
| Status | Meaning |
|---|---|
| Unmarked | Nothing recorded, in the portal or on the Monday board. |
| Submitted | Waiting on the campus count. The button reads Submitted · awaiting Campus count. |
| Approved | Both sides agreed, or an admin resolved it. Queued for the CRM. |
| Marked | Every current mark written to the CRM. The only status that has actually reached it. |
| Rejected | The two sides disagree. The button reads Check and resubmit, with the reason. |
| Marked in Monday | Recorded on the Monday board directly. Real attendance that never passed through the portal, so it is named for where it happened. |
| In progress | An unfinished roll from the old app. Drafts in the portal stay in the tutor's browser, so they don't show here. |
| … · overdue | Added to the status of today's class once it is 30 minutes past its start and still not marked. |
Today and the timetable
| Where | Labels |
|---|---|
| Today's classes | To mark, Overdue, Came back, Marked. |
| Week strip and timetable | Marked (marked, approved, or marked in Monday), Awaiting Campus (submitted), Needs you (rejected or overdue), Upcoming (anything else). |
| The roll | Sent back on a roll that came back. |
The Campus board
| Row | Meaning |
|---|---|
| No label · Enter count | The tutor has submitted; no count from Campus yet. |
| Count again · Enter count | The tutor changed their roll after it was counted, so the count was set aside. |
| Counts disagree · Amend my count | Compared and different. Admins also see Resolve as admin. |
Reporting
| Label | Meaning |
|---|---|
| Roster is wrong | Tutor and Campus named the same person, and it isn't who the roster says. Confirmed. |
| Three-way disagreement | Campus named someone else again. Disputed. |
| Awaiting Campus | The tutor named someone other than the roster; no count yet. |
| Corrected | The roster has been fixed. |
| Whose error: Tutor, Campus, Both, Not resolved yet | Which side changed its headcount between the attempt that failed and the one that matched. |
Reconciliation states
These appear in exports and in Trace.
| State | Meaning |
|---|---|
awaiting_campus | The tutor has marked. No campus count yet. |
awaiting_tutor | A campus count with no tutor marks. The app allows it from the day of the class, but no screen offers it, because the Campus board only lists classes with a roll. |
variance | The two sides disagreed and it is back with both. |
reconciled | Agreement reached, or resolved by an admin. Released to the CRM. |
admin_review | Retired on 6 September 2026. Nothing is put into this state any more. |
Why it's individual submissions
A roll isn't stored as one blob. Every student's mark is its own record, carrying the student, the status, who submitted it, when, and a revision number. That is what makes the rest possible:
- Amending one student doesn't disturb the others. Only the students whose mark changed get a new revision. Everyone else's marks and times are untouched.
- Nothing is overwritten. The original mark stays in the history, so the audit trail can show what a roll said before it changed.
- Each mark syncs on its own. One student failing to write doesn't silently take the class with it, and Trace shows each one.
- Every mark carries its author. On a class marked by a cover tutor, the records name them, not the rostered tutor.
The status you see on a class is a summary of those records plus the reconciliation state. The records are the source of truth.
Rules & limits
Integrations
| System | What it does |
|---|---|
| Monday.com | The timetable and the rolls. Classes, sessions, who is rostered each week and students come from the Class Schedule and subject boards. Approved marks are written back to the week column where Live Monday writes is on, and homework as a label that tells Make to message the guardian. Many classes are still marked on the board directly, which the portal reports as Marked in Monday. |
| HubSpot | The other class CRM. Which CRM each person sees is set by an admin (by default admins see both and everyone else sees Monday). A HubSpot class's link ends in -H, because some class codes exist in both. |
| Sign-in; the printing issues sheet that printing reports are added to; and Google Meet: reads who joined a class's meeting and suggests the online students. Advisory; the tutor still submits. | |
| Slack | Profile photos, and the morning message to Team Leaders and Heads where it is switched on. |
| Gemini | The Ask assistant, and turning a recorded class note into text and splitting it by student. |
| Helpdesk | Roster correction tickets for Academic Ops, and class-issue tickets for Campus Operations, Student Success and Academic Ops. |
| Make | Sends the reminder texts and guardian messages. |
| SendGrid | Emails the fortnightly reconciliation reports. |
| Tutor dashboard | The source of sit-ins, mirrored onto Me. |
| Rippling | Payroll IDs on the roster, and where roster corrections end up. The org chart behind Reporting is imported from the HR reporting-lines sheet. |
What runs on a schedule
All of it runs on the production service in Melbourne time. Nothing needs a person to press anything.
Old records: write attempts are kept for 30 days and assistant questions for 90. Audit records are kept. Admin › Health can run most of these by hand if something needs to land now.
Access & privacy
- Registration, not just sign-in. A Contour Google account is not enough on its own. The address must be in the directory, and only Google sign-in is accepted.
- Blindness is server-side. The count board and the count window never receive the tutor's marks. It isn't a hidden field. (Class search does return a roll's totals, so a reviewer shouldn't look a class up before counting it.)
- Permissions are checked on the server. Campus scope, Reporting scope, Students, the roster and every admin action are checked for every read and every write, not just by hiding a button. Reporting's export is the one exception so far: its button is admin-only, and the server limits the file to the caller's own scope.
- Reporting can't be widened by a filter. Filters narrow what your reporting line already allows.
- Privileged actions are audited with the person's email: role changes, queue actions, admin overrides, system switches, roster access and payroll exports, and reconciliation report sends and downloads.
- Credentials stay server-side. No API key or mail credential is ever sent to the browser.
- Pages can't be framed by other sites, and the portal only loads its own code. Microphone access is used only for recording a class note.
Troubleshooting
"You do not have an account on the attendance app"
Your address isn't in the directory. A working Contour Google account doesn't grant access on its own. Ask Academic Coordination or Yatta to add you. If you signed in with the wrong Google account, press Sign in with a different account.
My class isn't listed, I can't see my class, how do I mark a class that isn't here
All the same question, and the answer is Find a class: search the class code, open it and mark it. You don't have to be the rostered tutor and you don't need to be added first. Full detail in Tutors › My class isn't listed.
- This week shows the current teaching week only. An older class is reached through Find a class.
- Check the day dropdown isn't still on Today or a weekday.
- If you aren't the tutor the Monday board names this week, it won't be on your list. Search for it. Covering is normal and needs no permission.
- If the roster names the wrong person, mark it anyway and name yourself as primary.
- Only if search finds nothing either is it a missing class, and that is a timetable problem for an admin.
I can't find a class in search
You only see classes on the CRM your account is set to, usually Monday. An admin who can see both may find a class you can't; ask them to check. Archived classes don't appear.
The roll is empty
The class has no students against it. An admin can re-read it with Refresh class rolls; if it is still empty, the fix is on the Monday board or in the CRM.
My roll came back and I don't know why
Open the class. The Sent back banner lists each difference, for example In-person students · you marked 12 · Campus counted 14. Only in-person, online, the primary tutor and the secondary tutors are compared. Absent never is.
It keeps coming back
Then the two sides still disagree. Check the fields the banner names rather than resubmitting the same numbers. If neither side will move, ask an admin to use Resolve as admin on the Campus board.
My roll says Submitted and nothing is moving
It is waiting on the campus count, not on someone's approval. Nobody has a queue of your rolls to clear. If it has been more than a day, it shows on Admin › Health as overdue reconciliation.
It says Approved but the CRM has nothing
Approved means queued. Marks are written on the ten-minute sweep, so allow up to ten minutes. An admin can check Sync queues, and Trace shows exactly what was sent for each student. A Monday mark can wait while Live Monday writes is off or the board isn't set up for writing; it is retried, not lost.
I didn't get the reminder text
It only goes to classes on the Monday timetable, today, between 75 minutes and just over four hours after the start, and only to a mobile number on your directory entry. See the reminder text.
I can't see Availability, Students or the roster
Availability isn't open to tutors yet. Students is for admins. The roster is for admins and people granted access by name. None of these come with being a Team Leader.
I changed someone's role and the portal still shows the old one
A role change reaches the person on their next request, normally within about 15 seconds. Reload rather than saving again.
A Campus user's board is empty
Check their campus scope in the Directory. Ticked campuses restrict them to those. No ticks means every campus. And the board only lists classes whose tutor has submitted.
Glossary
VCE-CH34-80. The trailing number is the class, not the level. A HubSpot class's link adds -H.Built and maintained by YattaRewritten for the Tutor Portal · 25 Sep 2026 · v3.0 · Written for the Tutor Portal at tutor.contour.com.au.