Skip to main content

Back to station list

About Scottish rainfall information

Rainfall monitoring provides valuable information that helps protect Scotland’s environment and the health and safety of its people.

Rainfall data is crucial to a number of national services, including weather and flood forecasting.

Real time intensity rainfall data helps inform decisions about the issuing of flood warnings and water quality prediction at Bathing waters. It also has other potential uses such as helping farmers decide when to irrigate their crops.

Reliable long-term data helps scientists to build models that inform work by governments, agencies and organisations on climate change, environmental protection and management, water resource management and the health and safety of communities.

SEPA manages a network of over 280 automated ‘tipping bucket intensity’ rain gauges.

They work by funnelling rainfall into two collection buckets that tip back and forth on a pivot once they collect 0.2mm of rainfall. How often (or the frequency) the bucket tips is directly related to rainfall intensity. The time of each tip is recorded by a data logger that transmits the information instantly to SEPA offices. Our hydrologist can then view the data to make operational decisions relating to rainfall, such as issuing flood warnings.

SEPA also receives data from public rainfall observers who run manual read storage gauges. In the future we are considering changing our gauges to be a weighing type.

The complete network of both automated and manual rain gauges captures the distribution of rainfall across Scotland. This is essential for understanding trends and environmental change.

Our hydrologists use the data collected from the network of automated rain gauges to help make decisions about water resource management and flood forecasting.

The data also feeds into the Met Office’s national rainfall archive. This archive is used by government bodies, industry and researchers to inform weather and flood forecasting, long-term climate research and water resource management.

Further information about the data

Data from the SEPA’s network of rain gauges is collected automatically but it can take a couple of hours to travel through the system before it appears on the website.

Sometimes automatic collection is delayed by maintenance, system outages or other reasons. This can cause data to fall behind. If data from a gauge is more than 12 hours old the dot on the map will show as grey. SEPA staff are made aware when data falls behind and will work to fix the problem as soon as possible. There is no need to contact SEPA if there are gauges showing as grey on the map.

Clicking on a dot (or gauge) displays graphs of recorded rainfall. These graphs show hourly rainfall for the past few days, daily rainfall for the last month, the total rainfall in the current month.

The hourly rainfall graph shows the rainfall total measured at the gauge over the last three days. The graphed values represent the amount of rainfall recorded in the hour before the given time.

The daily rainfall graph shows the rainfall measured at the gauge over the last month. The graphed values represent the amount of rainfall recorded between 09:00GMT on the date given and 09:00GMT on the following day.

The Month Total graph shows the rainfall recorded in each of the previous 12 months and the partial total for the current month. The Average rainfall recorded in each month for the period of record is also shown as the monthly mean.

Data shown is raw data collected from the gauges and is subject to quality control procedures. As a result, values may change after publication on this website.

Download Rainfall Data

Data for the rainfall site is accessed from the SEPA timeseries API website.

Documentation for the API is available but a summary for data provided through the rainfall website is provided in the table below.

What URL Alternative formats
All rainfall stations on web site https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=getStationList
&stationgroup_id=279593
&returnfields=all,ca_sta
&format=html
  • html
  • csv (&csvdiv=,)
  • json

See full documentation

Single station information {station_no} is the unique station number https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=getStationList
&station_no={station_no}
&returnfields=all,ca_sta
&format=html
  • html
  • csv (&csvdiv=,)
  • json
Example https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=getStationList
&station_no=327237
&returnfields=all,ca_sta
  • html
  • csv (&csvdiv=,)
  • json

Note return fields can be specified individually by &return_fields=station__name,station_no, etc.

Hourly totals for 7 days {station_no} is the unique station number. The time period can be altered to return different length of data, eg P31D returns 31 days, P1Y returns 1 years data https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=gettimeseriesvalues
&ts_path={1/}{station_no}{/RE/Hour.Total}
&metadata=true
&period=P7D
&format=json&timezone=GB
  • html
  • csv (&csvdiv=,)
  • json

See full documentation

Example - csv https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=gettimeseriesvalues
&ts_path=1/327237/RE/Hour.Total
&metadata=true
&period=P7D
&csvdiv=,
&format=csv&timezone=GB

Note &csvdiv=, sets the csv divisor to a comma rather than semicolon

Daily totals for 1 month {station_no} is the unique station number https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=gettimeseriesvalues
&ts_path={1/}{station_no}{/RE/HDay.Total}
&metadata=true
&period=P1M
&format=json&timezone=GB
  • html
  • csv (&csvdiv=,)
  • json

See full documentation

Example - html https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=gettimeseriesvalues
&ts_path=1/327237/RE/HDay.Total
&metadata=true
&period=P1M
&format=html&timezone=GB
Month total for 1 year {station_no} is the unique station number https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=gettimeseriesvalues
&ts_path={1/}{station_no}{/RE/HMonth.Total}
&metadata=true
&period=P1Y
&format=json&timezone=GB
  • html
  • csv (&csvdiv=,)
  • json

See full documentation

Example - json https://timeseries.sepa.org.uk/KiWIS/KiWIS?service=kisters
&type=queryServices
&datasource=0
&request=gettimeseriesvalues
&ts_path=1/327237/RE/HMonth.Total
&metadata=true
&period=P1Y
&format=json&timezone=GB