Three tiny words โ in, on, at โ and they’re somehow harder than half the grammar in this site. I get asked about them more than any other topic.
The good news: there’s actually a clean pattern. It’s just that most textbooks bury it under exceptions.
The size principle
Think about it physically. You’re inside a year, a season, a century โ they surround you. You’re on a specific day, like standing on a stepping stone. You’re at a precise moment, a pinpoint.
That’s it. Apply it to almost any time word and you’ll pick the right preposition.
When to use “in”
Long periods you’re inside:
- Months: in July, in December
- Years: in 2020, in 1999
- Decades and centuries: in the 90s, in the 21st century
- Seasons: in summer, in winter
- Parts of the day: in the morning, in the afternoon, in the evening
One useful extra: in + duration = how long until something happens.
- I’ll be there in ten minutes.
- The meeting starts in an hour.
When to use “on”
Specific days and dates:
- Days of the week: on Monday, on Friday
- Dates: on June 5th, on the 21st
- Specific days: on my birthday, on New Year’s Day, on Christmas Day
- A day + part of day: on Monday morning, on Sunday afternoon
When to use “at”
Precise points in time:
- Clock times: at 6 PM, at midnight, at 9:30
- Mealtimes: at lunch, at dinner, at breakfast
- Brief holidays: at Christmas, at Easter (the whole holiday period, treated as a point)
- Fixed expressions: at night, at the weekend (UK), at the moment, at present
The tricky bits no one tells you
“At night” but “in the night”. Both exist. At night = general (“I sleep at night”). In the night = during one specific night (“I woke up twice in the night”).
“On time” vs “in time”. Easy to mix up, totally different meanings.
- On time = punctual. The train arrived on time. (exactly when scheduled)
- In time = with time to spare, before a deadline. We arrived in time to catch the train. (with a few minutes to spare)
Weekend. British English says at the weekend; American English says on the weekend. Both are correct in their region โ pick the one your audience uses.
No preposition at all with these words: today, tomorrow, yesterday, this week, last year, next month, every day.
- I’ll see you tomorrow. (not on tomorrow)
- We met last year. (not in last year)
- She calls every Sunday.
The full picture in one image
Think of it as zooming in:
- In the 21st century โ in 2026 โ in May โ on May 15th โ on Monday morning โ at 9 AM
Each step down zooms in further: from century to year to month to day to part of day to a single minute. The preposition shifts the way the zoom does.
Memorise these fixed phrases
Some combinations are just idioms โ they don’t follow the size rule but everyone uses them:
- at the moment = right now
- at present = currently
- at first = initially
- at last = finally
- in time = with time to spare
- on time = punctual
- on holiday / on vacation = away on a trip
- in advance = ahead of time
Both are correct in their region. British English says “at the weekend”. American English says “on the weekend”. If you’re learning International English for a global audience, either works โ just be consistent within one piece of writing. It’s a quirk of English. “In the morning / afternoon / evening” treats those as long stretches you’re inside. “At night” treats night as a single block of time. There’s no deeper logic โ just memorise it. “On time” means exactly when scheduled (“The train was on time” = no delay). “In time” means with time to spare before a deadline (“We arrived in time to catch the train” = we made it before it left). Just “tomorrow” โ no preposition. Same for today, yesterday, this week, last year, next month. These words already contain the time reference.Frequently asked questions
Is it “at the weekend” or “on the weekend”?
Why do we say “in the morning” but “at night”?
What’s the difference between “in time” and “on time”?
Do I say “on tomorrow” or just “tomorrow”?
Sources & further reading