How Canvas due-date tools differ
There are five kinds of tool for keeping track of Canvas due dates: Canvas's own To Do list and calendar feed, calendar-sync tools, task-manager integrations, browser extensions that read Canvas while you're signed in, and AI study apps that read course material you upload. They differ less in how they look than in six plain things: where your data goes, whether you need an API token, how far ahead they see, whether they notice a moved date, whether quizzes come through, and which other course sites they cover. For a start, Canvas's To Do list looks one week ahead, and its calendar feed looks about a year ahead, but only at work that has a due date.
Six questions to ask of any due-date tool
- Where does your data go? It can stay in your browser, go to a calendar or task app you already use, or go to the tool maker's server. Anything on a server is kept under that company's privacy policy, so read it.
- Does it need an API token? A Canvas API token is a password-like key you make in your Canvas settings. Some schools don't let students make one.
- How far ahead does it see? That depends on which part of Canvas it reads, and the parts differ a lot.
- Does it notice changes? A due date your instructor moves, a new assignment, and work you've already turned in.
- Are quizzes included? Canvas makes each graded quiz an assignment, so graded quizzes travel with assignments. Practice quizzes and ungraded surveys are not assignments, and many tools never see them.
- What else does it cover? Other course sites, and calendars from outside Canvas.
Canvas's own To Do list and calendar feed
Canvas has two views of its own. Both are free and need nothing installed.
The To Do list is built from Canvas's to-do feed, which runs from four weeks back to one week ahead. Work due further out is not on it yet, however large it is. It also leaves out locked work (an assignment that hasn't opened yet, or has closed) and, unless an app asks for them, practice quizzes and surveys. The Calendar view inside Canvas does show dates beyond a week. More on the window in the to-do list only shows the next 7 days.
The calendar feed is the link Canvas gives you to subscribe to from Google Calendar, Apple Calendar or Outlook. For your own feed, Canvas includes assignments and calendar events dated from 30 days back to 366 days ahead. An assignment with no due date is not in it, and neither are practice quizzes or ungraded surveys, because they aren't assignments. A calendar event has no checkbox, so work you've turned in stays on the calendar. A change also takes time to arrive: one university's Canvas documentation puts the Canvas side at about an hour, and your calendar app then fetches on a schedule of its own (see why your Canvas calendar runs late).
- Where your data goes: nowhere new while you stay in Canvas. Subscribing hands a copy to your calendar provider, which fetches the feed with its link.
- API token: none. The feed link is a key of its own, though: anyone who has it can read your schedule. See your feed URL is a credential.
- How far ahead: the To Do list, one week. The calendar feed, 366 days, for work with a due date.
- Changes: the To Do list updates within minutes, inside Canvas. The feed lags, first on Canvas's side and then on your calendar app's.
- Quizzes: graded quizzes appear in both (on the To Do list, once they've opened). Practice quizzes and ungraded surveys are left off the To Do list by default and are not in the feed.
- Other course sites: Canvas only, though your calendar app can subscribe to other feeds alongside it.
Calendar-sync tools: Canvas in Google Calendar or Outlook
These are services that put your Canvas dates into Google Calendar or Outlook for you, often with extras such as a color per course or reminders. Most start from one of two keys: your Canvas calendar feed link, or a Canvas API token.
- Where your data goes: to the tool maker's server, which fetches Canvas on your behalf, and then into your calendar account. Its privacy policy says what it keeps.
- API token: a feed-based tool needs only the feed link, which is still a key to your schedule. A tool that reads more than the feed asks for a Canvas API token.
- How far ahead: a feed-based tool sees what the feed carries, up to 366 days of dated work. A tool with a token can read each course's own assignment list.
- Changes: two delays stack, Canvas's on the feed and then the tool's own fetch schedule. A moved date shows up as a moved event, but turning work in doesn't clear it.
- Quizzes: as the feed: graded quizzes with a due date, and no practice quizzes or ungraded surveys unless the tool asks Canvas for them separately.
- Other course sites: often any site that publishes a calendar feed.
Task-manager integrations: Canvas in your to-do app
These turn Canvas assignments into tasks you can check off. They come as small scripts you run yourself, as connectors on automation services, or as features of a task app. Canvas to Todoist, without an API token walks through what a script asks of you.
- Where your data goes: through whatever runs the sync (your own computer, a server you rent, or the connector's service) and then into your task app's account.
- API token: usually a Canvas API token plus a token for the task app. Canvas lets a school stop students from making tokens, and where it does, these tools can't start.
- How far ahead: with a token they can read each course's whole assignment list, so the rest of the term is within reach. How much they take depends on how they were written.
- Changes: a task can be moved when its date moves and closed when you submit, but only if the tool does that. Some only add new tasks. Check whether it updates, and whether running it twice makes duplicates.
- Quizzes: graded quizzes come with the assignment list. Practice quizzes and ungraded surveys need a separate request.
- Other course sites: usually Canvas only.
Browser extensions that read Canvas while you're signed in
An extension runs inside your browser and asks Canvas for your work the way the Canvas tab does, using the session you're already signed in to.
- Where your data goes: it's read in your browser. What happens next depends on the extension: some keep it in the browser, some write it to an account of yours elsewhere, and some send it to their own server. The store listing's privacy section and the privacy policy say which.
- API token: none. When you install it, the permission prompt names the sites it can read.
- How far ahead: it depends on what the extension asks Canvas for. One that reads the to-do feed sees a week; one that reads each course's assignment list can see the whole term.
- Changes: it reads Canvas again each time it syncs, so a moved date or a submission shows up on its next pass. It works while your browser is running and does nothing while it's closed.
- Quizzes: graded quizzes come through as assignments. Practice quizzes and ungraded surveys only if it asks for them.
- Other course sites: some read Canvas only. Some also read other course sites you're signed in to, or calendar feeds you add.
AI study apps that read your uploaded course material
These ask you to upload a syllabus, slides or notes, and pull dates, topics and study plans out of them.
- Where your data goes: the files go to the app's servers, and often on to the AI model provider it uses. Its terms say how long uploads are kept and whether they're used to train models.
- API token: none. You give it files, not access.
- How far ahead: as far as the document goes, often the whole term, as of the day you uploaded it.
- Changes: none on their own. A date your instructor moves in Canvas doesn't reach a copy of last month's syllabus. Dates read out of a document can also come out wrong, so check them against Canvas.
- Quizzes: only the ones the document mentions.
- Other course sites: whatever you upload, from any course.
If all you want is a syllabus's dates in your calendar, our free syllabus converter reads your syllabus right here in the browser and uploads nothing. Like any copy of a document, it won't see later changes.
The five kinds side by side
| Kind of tool | Your data goes | API token | Sees ahead | A moved date | Practice quizzes and surveys | Other course sites |
|---|---|---|---|---|---|---|
| Canvas To Do list | Stays in Canvas | No | One week | Within minutes | Not by default | No |
| Canvas calendar feed | Your calendar provider | No, but the link is a key | 366 days, dated work only | About an hour, then your app's refresh | No | No |
| Calendar-sync tools | Their server, then your calendar | Feed link or token | The feed's reach, or more with a token | Two delays | Only if requested | Often, by feed |
| Task-manager integrations | The script or service, then your task app | Usually | The term, with a token | If the tool updates tasks | Only if requested | Usually no |
| Browser extensions | Your browser, then wherever it says | No | A week to the term | Next sync | Only if requested | Some |
| AI study apps | Their servers | No | What you upload | No | If the document lists them | Anything you upload |
Where Margin fits
Margin is one of the browser extensions, and we make it, so weigh this section with that in mind. Margin is a free Chrome extension. It reads your Canvas assignments through the Canvas session already open in your browser, so there is no API token to make, and writes them into your own Todoist, one section per course. It also adds the due dates from calendar feeds you give it.
- Where your data goes: No Margin server stores or reads your assignments, course names, exam titles or grades. They go from Canvas, through your browser, into your Todoist. The privacy page lists what our server does hold.
- API token: none. You do need a Todoist account today; it connects in one click with a free Margin sign-in.
- How far ahead: the free tier syncs the next week of Canvas assignments and calendar feeds, the same one-week window the to-do feed exposes, so it shares that feed's gaps, such as work that hasn't opened yet. The Margin Pass, $9.99 a semester and non-renewing, opens the whole term: switched on in Settings, it reads each course's own assignment list instead of the to-do feed. The Pass is bought inside the extension.
- Changes: when a due date moves within the window Margin reads, the next sync moves it on the task in Todoist. When you turn in a Canvas assignment before it's due, Margin checks it off in Todoist too. The Pass adds a dated record of moved due dates, old and new, for what Margin syncs. Like any extension, it syncs while your browser is running.
- Quizzes: graded quizzes are assignments in Canvas, so they come through with the rest. Margin does not currently request ungraded quizzes, so practice quizzes and surveys are not captured.
- Other course sites: Blackboard, D2L Brightspace and Moodle, through the calendar feed each school publishes, and any calendar app that publishes one. PrairieLearn, for courses that use it, with the Pass. It runs in Chrome and other Chromium browsers (Edge, Brave, Arc), not Firefox or Safari.
Margin can only show what Canvas exposes — check your syllabus too.
Add Margin from the Chrome Web Store
Which kind fits you
- If you open Canvas every day and your work is rarely due more than a week out, the To Do list and the Calendar view may be all you need.
- If you live in Google Calendar or Outlook, subscribe to the Canvas feed. A sync tool earns its place only if it adds something you'll use. Either way, keep the feed link private.
- If you plan in a task app and don't mind a token, a script or a connector gives you control. Check that it moves tasks when dates move and doesn't duplicate them.
- If your school doesn't allow tokens, or you'd rather not run anything, an extension reads Canvas without one. Check where it sends what it reads.
- If what you want is a study plan, an AI app can help with that. Keep Canvas as the record of dates.
- Whatever you use, the syllabus is still the only record of work an instructor never put into Canvas.
Common questions
- Why does the Canvas To Do list only show a week ahead?
- Canvas builds it from a to-do feed whose default window runs from four weeks back to one week ahead, so work due later is not on it yet. The Calendar view and the calendar feed reach further.
- Does the Canvas calendar feed include quizzes?
- Graded quizzes with a due date, yes: Canvas makes each graded quiz an assignment. Practice quizzes and ungraded surveys are not assignments, and the feed leaves them out, along with any assignment that has no due date.
- Do I need a Canvas API token to sync my due dates?
- Not for the calendar feed, and not for an extension that reads Canvas while you are signed in. Scripts and many integrations do need one, and Canvas lets a school stop students from creating tokens.
- Is it safe to give an app my Canvas calendar feed link?
- Treat the link like a password. Anyone who has it can read your schedule, so give it only to a tool you chose on purpose, and never post it.
- Which tools catch a due date that moves?
- Anything that reads Canvas again will see it. The To Do list updates within minutes. A subscribed calendar lags: about an hour on the Canvas side, then your calendar app's own refresh. A script or an extension catches it on its next run if it updates items it already made. An uploaded syllabus never does.
Sources
- The To Do window: canvas-lms,
app/models/user_learning_object_scopes.rb(master, retrieved 2026-10-24):assignments_needing_submitting(due_after: 4.weeks.ago, due_before: 1.week.from_now, …); locked work is filtered byassignments.not_locked unless include_locked;ungraded_quizzesdefaults todue_after: Time.zone.now, due_before: 1.week.from_now. - The calendar feed: canvas-lms,
app/controllers/calendar_events_api_controller.rb,public_feed(master, retrieved 2026-10-24):@start_date = 30.days.ago,@end_date = 366.days.from_now, then assignments and calendar events for that user in the window. The assignment scope isdue_between_with_overrides(app/models/abstract_assignment.rb), so undated assignments are left out. - Graded quizzes are assignments: canvas-lms,
app/models/quizzes/quiz.rb(master, retrieved 2026-10-24): a quiz gets an assignment whengraded?, which is quiz typeassignmentorgraded_survey. Instructure Users API reference (developerdocs.instructure.com/services/canvas/resources/users), oninclude[]=ungraded_quizzes: "Optionally include ungraded quizzes (such as practice quizzes and surveys) in the list." - Schools can stop student tokens: canvas-lms,
app/models/account.rb(master, retrieved 2026-10-24): the account settingrestrict_personal_access_tokens_from_students. - The feed's delay: University System of New Hampshire Canvas KB, Article 932 (retrieved 2026-07-30): "there is approximately a 1 hour response time for the updates to be pushed from Canvas calendar." Google Calendar Help, answer 37100, documents no refresh interval for calendars added by URL.
- Margin's own behavior (our code, read 2026-10-24): Canvas is read with the browser's signed-in session and no API key (
extension/sync-canvas.js); the free tier reads the to-do feed and the Pass's whole-semester foresight reads each course's assignment list (extension/sync-canvas.js,extension/constants.js); a task whose due date changed is updated on the next sync (extension/todoist-write.js);ungraded_quizzesis never requested. Line numbers move; the file names are the anchors.
Canvas changes, so a quoted line can move or be rewritten. The behavior is the durable part, and every quote carries the date we read it.