Phuket weather by month: rain, sea temperature and air (2015–2025 data)
Open data for 2015–2025 from the ERA5 reanalysis, the Météo-France marine model and the Phuket Airport weather station. According to the reanalysis, Phuket received an average of 2,162 mm of rain a year over this period — from 1,658 mm in 2015 to 2,756 mm in 2017. By median rainfall, the dry months are January to March; the transitional months are April and December; the rainy season covers May to November.
This is the English edition of the Russian weather-by-month page of Kvartiry-Phuket, a Russian-language guide to living in and buying property in Phuket: the same data file and the same numbers. The month pages and the embeddable widget are in Russian.
All twelve months in one table
| Month | Day, °C | Night, °C | Sea, °C | Rain, median mm | Rain, mean mm | Rain days ≥1 mm | Cloud cover, % | Waves, m | Verdict |
|---|---|---|---|---|---|---|---|---|---|
| January | 32.4 | 22.3 | 28.9 | 28 | 73 | 10 | 68 | 0.6 | dry month |
| February | 33.3 | 22.8 | 29.2 | 20 | 35 | 5 | 53 | 0.6 | dry month |
| March | 34.3 | 23.5 | 29.9 | 37 | 40 | 8 | 58 | 0.5 | dry month |
| April | 34.0 | 24.3 | 30.6 | 132 | 128 | 18 | 75 | 0.5 | transitional month |
| May | 33.0 | 23.8 | 31.0 | 242 | 255 | 25 | 86 | 0.8 | rainy-season month |
| June | 32.3 | 23.6 | 30.1 | 226 | 218 | 21 | 86 | 1.0 | rainy-season month |
| July | 32.1 | 23.6 | 29.8 | 231 | 223 | 21 | 86 | 1.1 | rainy-season month |
| August | 31.4 | 23.2 | 29.9 | 239 | 236 | 22 | 86 | 1.1 | rainy-season month |
| September | 31.1 | 23.1 | 29.1 | 282 | 310 | 24 | 89 | 1.1 | rainy-season month |
| October | 31.5 | 23.0 | 29.4 | 258 | 300 | 26 | 88 | 0.8 | rainy-season month |
| November | 31.7 | 23.1 | 29.6 | 214 | 239 | 24 | 86 | 0.6 | rainy-season month |
| December | 31.6 | 22.6 | 29.1 | 99 | 107 | 14 | 72 | 0.6 | transitional month |
Day and night are the mean daily maximum and minimum at the Phuket Airport station over the years with complete observations: 5–10 years per month for daytime highs and 4–10 for night-time lows; the other columns come from the ERA5 reanalysis and the marine model. Verdict by median rainfall: below 60 mm — dry month, 60–150 mm — transitional month, 150 mm and more — rainy-season month. How we calculated.
Year-by-year values for each month (2015–2025) are on the month pages, which are in Russian: January · February · March · April · May · June · July · August · September · October · November · December.
Median rainfall by month
Best months according to the data
- Least rain: February (20 mm), January (28 mm) and March (37 mm).
- Least cloud: February (53%), March (58%) and January (68%).
- Calmest sea off the west coast: March (0.5 m), April (0.5 m) and February (0.6 m).
- Warmest sea: May (31.0 °C), April (30.6 °C) and June (30.1 °C).
- Most rain: September (282 mm), October (258 mm) and May (242 mm).
The “best” month depends on the purpose. For a beach holiday on the west coast, dry weather and a calm sea matter most; for a scouting trip before buying property it helps to see an area both in the dry season and in the rainy season — only heavy rain shows how a building and its street cope with water.
Embed the widget (Russian-language)
A compact month-by-month table — day and night air, sea, median rain and rain days — with a link to the source. It is a Russian-language widget: month names and column headings are in Russian, the numbers are the ones in the table above. Paste the code into the HTML of your page; the widget adapts to the width of the column.
Preview: open the widget. The widget shows the same data as this page and updates with it.
Download the open data
One JSON file with every monthly value for every year, the statistics used on this page (mean, median, minimum and maximum with their years), the weather-station cross-check and the exact API requests. Keys and descriptions are in English; months are numbered 1 to 12.
Sources and methodology
- ERA5 / ERA5-Land reanalysis via the Open-Meteo Historical Weather API, model
era5_seamless: temperature and humidity from ERA5-Land (0.1° grid); rainfall, cloud cover and wind from ERA5 (0.25°). Request point 7.89° N, 98.30° E; grid cell 7.90° N, 98.30° E. Daily values in local time (UTC+7) from 2015-01-01 to 2025-12-31, data retrieved on 2026-09-25. Exact API request. - Sea surface temperature: Open-Meteo Marine API, Météo-France model (
meteofrance_currents, 0.08° grid), point 7.875° N, 98.208° E off the west coast. The archive at this point starts on 2022-11-23, so the sea temperature is the mean for 2023–2025 (months with at least 90% of hourly values). Earlier years are not filled in. Request. - Waves: ERA5 wave reanalysis via the same Marine API (
era5_ocean, 0.5° grid), open Andaman Sea west of the island, cell 8.0° N, 98.0° E. This is the mean significant wave height in the open sea, not the surf at a particular beach. Request. - Weather station: NOAA NCEI GHCN-Daily, station TH000048565 “PHUKET AIRPORT, TH” (8.132° N, 98.317° E, 9 m). Daytime highs and night-time lows come from the station: the reanalysis grid cell mixes land and sea, which smooths the daily cycle. A month is used only if it has no more than 10 missing days and no gap of 5 or more consecutive days (the 5/11 rule of WMO guide No. 1203), so the number of years differs by month and is given under the table. Station file.
How to read the numbers
- Median and mean. For rainfall the headline figure is the median — a “typical” year: one extreme month inflates the mean (the most striking case in the series is January 2017: 388 mm, against a median of 28 mm and a mean of 73 mm). The table shows both.
- Rain days are days on which the reanalysis grid cell received at least 1 mm. The reanalysis averages rainfall over an area of about 28×28 km, so it counts more such days than a single weather station would: read them as “days when it rained somewhere nearby”, not “days under rain”.
- Cloud cover is the mean share of the sky covered by cloud over the day. We use it instead of modelled “sunshine hours”: the model counts every hour with direct radiation above 120 W/m² as sunny, and in the rainy-season months, with mean cloud cover of about 87%, it comes out at 9.2 sunshine hours a day — not reliable enough to compare months, so it is not shown here (the values are in the open JSON).
- Verdict of the month is based on median rainfall: below 60 mm — dry month (the Köppen threshold for a dry tropical month), 60 to 150 mm — transitional, 150 mm and more — rainy season.
- Official station climate normals are published by the Thai Meteorological Department (TMD); our figures are open data for the specific years 2015–2025, not an official normal.
- Licences: Open-Meteo data — CC BY 4.0 (Weather data by Open-Meteo.com). Contains modified Copernicus Climate Change Service information (2015–2025); neither the European Commission nor ECMWF is responsible for any use that may be made of the Copernicus information or data it contains. Station data — NOAA NCEI GHCN-Daily.
How to cite
Please credit Kvartiry-Phuket with a link to this page. Suggested citation:
Kvartiry-Phuket (2026). Phuket weather by month: rain, sea temperature and air, 2015–2025. Data: Open-Meteo (ERA5, ERA5-Land, Météo-France), NOAA NCEI GHCN-Daily; retrieved 2026-09-25. https://kvartiry-phuket.com/en/phuket-weather-by-month/As an HTML link:
<a href="https://kvartiry-phuket.com/en/phuket-weather-by-month/">Phuket weather by month, 2015–2025 — Kvartiry-Phuket</a>The monthly values and the JSON file may be reused under CC BY 4.0: credit Kvartiry-Phuket with a link to this page and keep the source and licence notices of Open-Meteo, Copernicus and NOAA listed under Sources and methodology.
More open data in English
- Phuket beaches compared — coast side, length and drive times for 25 beaches.
- Phuket condo asking prices — a documented snapshot of advertised asking prices with downloadable data.
- Official Phuket condominium assessment rates — Thai Treasury Department data, not market prices.