Canvas's to-do list only shows the next 7 days
Canvas's to-do list is not a list of everything you have due. It shows assignments due in a window from four weeks back to just one week ahead — anything due further out is not in the feed, no matter how big it is. The window is the default in Canvas's own source, and Instructure's Users API reference — the page documenting this endpoint — does not state it.
What you see
You know a paper is due in two weeks, but the Canvas to-do list acts like it doesn't exist. Then it appears out of nowhere with a week to go, and the runway you thought you had is gone. A widely repeated version of this says Canvas shows "about two weeks." It doesn't — it's one.
Why it happens
The feed behind the to-do list (GET /api/v1/users/self/todo) is built by a scope in Canvas's source that takes due_after: 4.weeks.ago, due_before: 1.week.from_now as its defaults. One week forward, unless a caller overrides it — and the to-do endpoint does not. Instructure's Users API reference, the page documenting this endpoint, says only that there is "a limit to the number of items returned"; it does not state the window.
What you can do about it
The Canvas calendar view does show dates beyond a week, so use it — not the to-do list — for planning ahead. The calendar's iCal export reaches much further out than the to-do list, with limits of its own (see the calendar feed's hard limits). And the syllabus is still the only complete record for anything an instructor never entered into Canvas.
For how other kinds of due-date tool handle this window, see how Canvas due-date tools differ.
Evidence
canvas-lms, app/models/user_learning_object_scopes.rb (master branch, retrieved 2026-07-30): assignments_needing_submitting(due_after: 4.weeks.ago, due_before: 1.week.from_now, …). Instructure Users API reference (developerdocs.instructure.com/services/canvas/resources/users): "there is a limit to the number of items returned" — no window documented.
Margin's free extension tier syncs the next week of Canvas assignments and calendar feeds — the same one-week window the to-do feed exposes. The Margin Pass adds whole-semester foresight, and it gets there by asking Canvas a different question: switched on, it reads each course's own assignment list instead of the to-do feed, so the rest of the term is visible. Calendar feeds and syllabus import fill in the same view.