Map from Google - Frankfurt

In Frankfurt am Main, the main city of the state of Hesse, in southwestern Germany, and in the neighbouring cities of Wiesbaden and Mainz, the climate is slightly continental, with cold (but not freezing) winters, and mild or pleasantly warm summers. In the warmest period of the year (May to September), Frankfurt is the warmest large city in Germany.
The average temperature in January is 1,5 °C, while in July it's 20 °C.
Here are the average temperatures.
Frankfurt average temperatures
Frankfurt J F M A M J J A S O N D
Min (°C) -1 -1 2 5 9 12 14 14 11 7 3 0
Max (°C) 4 6 11 15 20 23 26 25 20 15 8 5

Precipitation is not abundant, about 630 millimetres per year, but it is quite common and well distributed throughout the year; however the rainiest season (at least in quantity) is summer, the least rainy season is winter. Rainfall often occurs in the form of short showers or drizzle, whereas during the summer, thunderstorms can break out in the afternoon.
Here is the average precipitation.
Average precipitation Frankfurt
Frankfurt J F M A M J J A S O N D Year
Prec. (mm) 45 40 50 40 65 60 65 55 55 55 50 55 630
Days 9 8 10 9 10 10 10 9 9 9 10 10 112

Winter, from December to February, is cold: the daytime temperatures are on average a few degrees above freezing, and at night they stay around freezing.
However, different weather situations may occur.
When the westerlies blow, the temperatures can be quite mild, and can reach 10/12 °C, but there may be wind and rain.
In anticyclonic days, the weather is cold, the sky is gray and there may be fog.
On the contrary, when the city is reached by cold air masses from Russia, the temperature drops below freezing, for longer or shorter periods, even during the day. The temperature rarely drops below -15 °C, however, it can do it in colder periods, which in the past were more frequent (here are some values recorded in the past: January 1940: -27 °C; January 1942: -26 °C; January 1947: -17 °C; February 1956: -19 °C; January 1963: -17 °C; January 1979: -20 °C; February 1985: -18 °C; February 1986: -15 °C; January 1987: -17 °C).
Snowfalls in Frankfurt are quite frequent, though usually not abundant, and occur in the form of sleet or light snow, sometimes however snow can accumulate on the ground, and last for many days, if it occurs during cold waves.

Spring, from March to May, is initially cold, with possible snowfalls still in March, and then it gradually becomes milder in April and May, although some cold days, with highs around 10 °C, can occur also in May, especially in the first half of the month. However, April and May are, albeit slightly, the sunniest months.
Typically, in the second half of May the temperatures become permanently acceptable, and there can be the first pleasantly warm days, with highs around 25 °C or even above.

Summer, from June to August, is warm enough; Atlantic disturbances may still pass in this season, bringing cool and rainy days, but there may also be some hot and sunny days, in which the temperature can reach 28/32 °C, however with some risk of afternoon thunderstorms; more rarely the temperature can exceed even 35 °C (in August 2003 the temperature reached 39 °C).

Autumn, from September to November, is initially pleasant, ie in the first half of September, then it gradually becomes more cold, dull and wet. The first night frosts usually occur in November, but sometimes also in October. During calm nights, fog may form.

Frankfurt

The amount of sunshine in Frankfurt is not high: the sun rarely shines from October to February, while it goes a bit better from May to August, when the weather is variable, and between a disturbance and the other the sun can come out. There are on average 7 hours of sunshine per day from May to August.

When to go

The best time to visit Frankfurt runs from mid-May to mid-September, being the mildest of the year. July and August are the warmest months; however, it's better to bring a sweatshirt or sweater, a light jacket and an umbrella, for cool and rainy days.