It often depends on the source. Some sources give them out all year long, with new starters available nearly daily. These are sources who give out more common pokémon that are easily obtainable throughout a given region.
However, professors are special cases, as regional ones often give out a set of three starters (one grass, one fire, and one water) designated as “official starters” by the Pokémon Association. These may only be given out once a month, largely because it takes time for a breeder to obtain and hatch eggs of each species, as well as ensure that each hatchling is suitable for battle.
In rare cases, a professor may give out something other than their usual three starters, but usually, these are fantastically unusual circumstances. For example, Professor Oak once gave a boy from Pallet Town a pikachu that was extracted from someone’s home and scheduled to be released into Viridian Forest, but due to the rather … unique case of the boy, it was given to him as a starter instead.