Free tools. No account. Nothing stored.

Daily Routine Planner

This planner builds a day out of two fixed points and everything you wedge between them. You give it a wake time and a sleep time, add the commitments that already have a start time, tell it what to call the empty space, and it hands back a table of the whole day with a duration on every block.

It suits the part of the term where the day is technically free but somehow evaporates. Between a 9am lecture and an evening shift there are eight unclaimed hours, and they behave very differently once they are written down as one block that says 10:30 to 17:00 instead of a vague intention to study.

One honest detail: the tool does not know your energy levels. It will cheerfully label a four-hour stretch as study time at 11pm, and it is up to you to notice that the plan it produced has you working when you are useless. Read the table as a shape of the day, then move the parts that do not fit you.

Build a daily routine with time blocks. Set your wake and sleep times, add fixed commitments, and fill the rest with activities.

How it builds the day

Set the wake time and sleep time first. The default is 07:00 to 23:00, which is 16 hours of waking day and 960 minutes for everything to fit into. If you enter a sleep time that comes before the wake time, like 01:00 with a 07:00 wake, the tool reads that as crossing midnight and counts the full span correctly.

Commitments are a name, a start time, and a duration in minutes. The + Add commitment button adds as many rows as you need. Anything left blank, or anything with a duration of zero, is quietly dropped, so half-filled rows do not break the plan, they just never appear in it.

The tool sorts your commitments by start time, walks forward from your wake time, and drops a block of the fill label into every gap it finds. Whatever is left between the last commitment and sleep gets filled too. The fill box defaults to Study, and you can put Exercise, Free time, Work, or anything else in there instead. The result is a table of time, activity, and duration, plus the total scheduled underneath.

A worked example

Wake 07:00, sleep 23:00, fill label Study. Two commitments: Lecture at 09:00 for 90 minutes, and Gym at 17:00 for 60 minutes.

The output comes back as five rows: 07:00-09:00 Study, 2h, then 09:00-10:30 Lecture, 1h 30m, then 10:30-17:00 Study, 6h 30m, then 17:00-18:00 Gym, 1h, then 18:00-23:00 Study, 5h. Total scheduled: 16h 0m, which is the whole window, nothing unaccounted for.

Look at what that exposed. The plan is 13.5 hours of study, split into two blocks that are each longer than most people work. Nobody studies for six and a half hours straight, so the useful move is to cut the middle block with a shorter fill label, add a Part-time shift at 13:00, or accept that the table is a container rather than a script. The table is right about the time you have. It is silent on how to spend it.

What it assumes, and where it goes wrong

Commitments are assumed not to overlap and to start after you wake up. If a row starts at 06:30 when you wake at 07:00, the block still gets drawn from 06:30, which is a day you are asleep for. Same with two rows at the same start time: the second one starts where the first ends rather than on top of it, so your 14:00 hour can stretch further than you meant it to.

It also does not account for travel, meals, or the twenty minutes it takes to get from one building to the next. A lecture marked as 09:00 for 90 minutes plus a lab at 10:30 across campus is technically contiguous and practically impossible. Put the walk in as its own row if you want the shape to survive contact with reality.

And it counts only your waking window. Sleep itself is not on the table, so a 16-hour day is not a 16-hour day of output, it is a 16-hour day of raw material. Most people get eight useful hours out of it.

Other tools

Frequently asked questions

What if I go to bed after midnight?

Enter the clock time you actually sleep, like 01:00. When the sleep time falls at or before the wake time, the tool treats it as the next day and counts the span across midnight, so 07:00 to 01:00 comes out as an 18-hour day.

Can I add more than one commitment?

Yes, press + Add commitment for each one. Rows with a missing name, a missing start, or a duration of zero are skipped, so you can leave placeholders without breaking the output.

What happens to empty gaps?

They get the fill label. Everything between wake and sleep that is not a commitment becomes one block of whatever you typed in that box, which defaults to Study.

What if two commitments overlap?

The tool assumes they do not. It sorts by start time and walks forward, so a second row that starts while the first is running will begin where the first one ended instead. Keep your rows sequential.

Can I change what the gaps are called?

Yes, the fill box takes any text. Study is the default, but Exercise, Free time, Part-time work, or Commute all work. Whatever you put there is what appears in every gap in the table.