I've seen people using the phrase once a year but I wonder isn't it should be once in a year. Are they both the same and acceptable?
There is a slight, but meaningful, difference.
"Once a [time period]" implies frequency observed over a range of time greater than [time period]. "Once in a [time period]" implies an observed frequency of 1 in a single [time period].
If somebody were to say something occurred once in a month then he means he is talking about an event with a time of a month. If someone says something occurs once a month then he definitely has data larger than a month.
My last boyfriend, Eric, would buy me flowers once a month! But John has only bought me flowers once in a year. Does John hate me or is he just less sentimental and thus will only buy flowers for year anniversaries?
During the first year of our relationship, Phillip bought me flowers once a month. Why would he now only buy me flowers once in a year?
As FumbleFingers brings up in the comments, the "once in a [time period]" could instead be an application of figurative speech and not based on technical data. The following example shows a usage of the phrase that indicates exaggerated speech is at play.
Wow! That's rare; it only happens once in a blue moon!
This is perhaps more indicative of a common idiom but still important to bring up.
To slightly elaborate on what was established above, it may not be obvious that the phrase "once in a [time period]" can be used to establish a cap on repetitions in a [time period]. See below.
Alice: "So, he goes to Mexico 10 times a year?"
Bob: "Yes, but never twice in the same month; he only goes once in a month."
The main reason they're "not the same" is because of this huge difference in frequency of use...
I don't think there are
any many1 contexts where you need to include in, so the easiest option is never to use it (because in most contexts it will sound odd to native speakers if you include in).
But as often happens in English, where one of two different versions of an expression becomes dominant, the less-favoured alternative may nevertheless survive, and start to carve out its own "semantic territory" and associations. Take, for example...
1: It doesn't snow here often. Usually not more than once in a year.
2: She doesn't go out much. Probably not once in a month.
There's nothing "unidiomatic" about those usages (though they'd be fine without the extra preposition). I think the reason they're acceptable is because they stress the infrequency of the event (it's rare, uncommon).
Another important factor is that the occurrence rate being referenced has to be somewhat imprecisely measured, unpredictable, irregular. So (for me at least)...
3: I've always had regular checkups. I see my dentist once in a year
...doesn't work at all.
1 Note that in has semantic significance in constructions like I haven't seen him once in a year, where it means once in the past year (i.e. - the twelve months immediately preceding time of utterance). There are also closely-related usages such as once in a lifetime, once in a blue moon where in is idiomatically required. As with the examples above, all these contexts imply infrequent / sporadic.
It's important to remember: the word a can be used as a preposition, meaning per. See this screen shot focusing on just a few of the many definitions found on Wordnik:
Therefore, the phrase once a year is perfectly grammatical, acceptable, and idiomatic.
Once a year is considerably more common: here is an NGram. It implies that something takes place once in every calendar year. For example:
I take a holiday in Norway once a year
Once in a year is much less common and is in decline: many of the older references relate to annual religious observances. In modern usage, it refers to something that happened only once within a one-year period which need not necessarily be a calendar year, for example:
He bought me a drink only once in a year.
Once a year/month/week would be more common. Once in a year/month/week would be understood, but less likely used. You are more likely to hear "Once in the past year" or "Once in the past five months" than "once in a year"
For an expression of the form "once a ", "a" acts as a preposition meaning "per"; it could also be defined as "each"
I think that there's a precision difference between those two phrases.
"Once a year" says to me that every year, about the same time, something happens.
He goes on vacation in Florida once a year.
- It's some sort of a tradition, which is usually tied to a particular time.
He only goes to Florida once in a month.
- It's more rare to hear this, especially longer than a month, and it's a "may or may not happen" sort of occurrence.
From my perspective this is the difference in meaning:
- Once in a year: The expectation is that it happens each year and 1 time each year
- Once a year: The expectation is that it happens at a 1 year interval
This difference is usually not relevant, but here is an example where only 1 of the two seems appropriate:
Someone whose birthday is around 1 january, may celebrate it in december or january. In this case it would be strange (wrong?!) for the person to say:
Once in a year I celebrate my birthday