Page tree
Skip to end of metadata
Go to start of metadata

This is a recipe for first time users of C3S Seasonal forecast data and ECMWF's data server.

1. Learn about C3S Seasonal forecast data

  1. Read about C3S Seasonal forecast service.
  2. Browse the C3S Seasonal Forecast data catalogue and make sure the data you are interested in is available.
  3. C3S Seasonal forecast data documentation is currently in preparation and will be made available as soon as possible to help users with parameters (fields), values for data type, stream, level type (surface, pressure levels, model levels, etc) , forecast steps, etc... In the meantime, users may contact the Copernicus User Support team for assistance with C3S Seasonal data selection.
  4. A list of known issues of the C3S seasonal forecast dataset can be found here

2. User account and License agreement

  1. The C3S Seasonal forecast data is hosted at ECMWF. To access the C3S Seasonal forecast data you need a user account with ECMWF, so if you do not have a account, register a ECMWF account now.
  2. Read the Copernicus license agreement and accept the agreement at the bottom the page. This is necessary so we have a record of you accepting the license agreement.

3. Technical prerequisites

You need:

  • A computer with a *nix operating system is highly recommended. Microsoft Windows is known to work too, but is unsupported, see here for details.
  • The Python programming language. If you do not have it installed yet, install Python now.

4. Set up your computer

This is to configure your computer to programmatically retrieve data from ECMWF. You only need to do this once, and only if you have never retrieved ECMWF data using Python before. For more information refer to Access ECMWF Public Datasets of ECMWF WebAPI.

1. Install the ECMWF WebAPI client library by running:


sudo pip install

If you cannot use the sudo pip command above (e.g. no admin rights on your machine), use the --user option of pip to install it in $HOME/.local/lib :

pip install --user

2. Get and install an ECMWF API key:

  1. Go to to verify you are logged in. If you are not, log in with your ECMWF account details (as registered in step 2).

  2. Go to . You will see something like below:


    "url"   : "",
    "email" : ""

3. Copy the bit with the curly brackets as shown above into a text file and save the file as $HOME/.ecmwfapirc (on Unix/Linux) or %USERPROFILE%\.ecmwfapirc (on Windows)

5. Run a test

This is to verify that your computer is set up correctly.

1. Copy the following Python script to a text file and save it, for example as ''

#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer

server = ECMWFDataServer()
    "dataset": "c3s_seasonal",
    "date": "2017-09-01",
    "levelist": "10",
    "levtype": "pl",
    "number": "0/to/50",
    "origin": "ecmf",
    "param": "130.128",
    "step": "12",
    "stream": "mmsf",
    "time": "00:00:00",
    "type": "fc",
    "target": "c3s_seasonal_example.grb"

2. Run the script. On most computers you would do this by opening a command prompt and typing


The test request will download data from ECMWF and save as file 'c3s_seasonal_example.grb' in the directory you issued the command from.

Note that the data retrieval is not designed to be instant. The test request above usually takes a few minutes to complete, but depending on demand can take longer.

3. With your favourite GRIB file reader verify that you can read the file. If you are not familiar with GRIB please see What are GRIB files and How to read or decode a GRIB file

If you get an error message or the output is not as specified in to the Python script, most likely your computer setup is wrong, or you did not accept the dataset license, so please go back to the previous steps.

6. Create your data retrieval script

  1. Browse the C3S Seasonal Forecast data catalogue for the data you are interested in, and in the last step make a selection in all boxes and click 'View the MARS request'. This shows a template Python script with your selected options.
  2. Copy the Python script to a text file and save it, for example as ''
  3. If necessary, adapt the Python script to your requirements,e.g. change date, time and grid.
    1. For an output in netcdf format, specify "format" as "netcdf"
    2. If you specify "format" as "netcdf", then you will need to set "grid". Otherwise, GRIB to netCDF conversion will fail.
    3. If you specify "grid", the horizontal resolution is in decimal degrees. If not set, the archived grid as specified in the data documentation is used.
    4. To subset to a geographical area, specify "area" as N/W/S/E in geographic lat/long degrees. Southern latitudes and western longitudes must be given as negative numbers e.g. "area": "75/-20/10/60". Requires "grid" to be set to a regular grid e.g. "grid": "1.0/1.0".
    5. Change the "target": "CHANGEME", to the desired output path and file name, e.g.  "" or "./data/data1.grib". The default path is the current working directory.


  • You can have a maximum of three active requests at a time.
  • The maximum data volume is 20GB per request.
  • The maximum number of fields to be retrieved is 600,000 fields per request.

Note that the data retrieval is not designed to be instant. A larger request can take hours and even days to complete.

To retrieve data efficiently (and get your data quicker!) you should retrieve all the data you need from one tape, then from the next tape, and so on. In most cases this means retrieving all the data you need for one month, then for the next month, and so on. See C3S Seasonal Forecast retrieval efficiency.

7. Run your data retrieval script

On most computers you would do this by opening a command prompt and typing


This will retrieve the data as specified and download it as a single file to your computer into the current directory (or whichever "target" directory you specified).

For long running processes you can check the progress of your request in your job list.

8. Check results

Check that the data you downloaded meets your requirements.

To report an issue or bug please contact Copernicus Support at ECMWF