In general April and October/November are said to be the best times to visit Japan. This is mainly because of the nice weather: you probably wont need a jacket, there's not much rain and it isn't hot and humid like in summer. The other thing is the two major attractions: Cherry blossoms in early april and autumn colors in november.

However, there are many other things that you may want to do or see, or maybe you don't have time in these periods. See the table below for the most important characteristics of each month:

MonthPositiveNegative
January
  • clear days to see Mt Fuji nicely
  • skiing in North Japan
  • quite cold
February
  • end of february: plum blossoms
  • Snow Festival in Hokkaido
  • skiing in North Japan
March
  • Nice weather
  • early march plum blossoms
  • end march: cherry blossoms around kyoto
April
  • Nice weather
  • beginning april: cherry blossoms around Tokyo
May
  • First week of May is national holiday: everything is VERY crowded
June
  • Rainy season
July
  • Possible to climb Mt Fuji (weekday beginning July is least crowded)
  • Hokkaido still cool & dry
  • end of july: fireworks festivals
  • Very hot and humid
  • beginning of july: rainy season
August
  • Possible to climb Mt Fuji
  • Hokkaido still cool & dry
  • beginning of august: fireworks festivals
  • Very hot and humid
  • Mid August is holiday: everything (also Mt Fuji) is VERY crowded except Tokyo
September
  • Typhoon season south japan(especially Okinawa)
October
  • Nice weather
November
  • Nice weather (not cold)
  • Beautiful autumn colors
  • some clear days to see Mt Fuji nicely
December
  • clear days to see Mt Fuji nicely
  • quite cold

If you want to see a special festival, check the annual events calendars: