A solar or wind asset can be modelled using your own generation data - a spreadsheet of how much the site generates over a year. The file format is the same for both technologies.
- Solar: A custom profile is optional. It replaces Modo Energy’s modelled profile. See Solar and Co-location for how it feeds into clipping, cannibalisation, and revenue calculations.
- Wind: A custom profile is required. There is no modelled fallback, because wind output is far more site-specific than solar. See Wind for how it is used.
This page explains what the file needs to look like.
What does the file look like?
It is a CSV (comma-separated values) file with two columns - a time, and the power generated at that time:
| Timestamp (UTC) | Power (MW) |
|---|---|
| 01/01/2024 00:00 | 0 |
| 01/01/2024 09:00 | 9.9 |
| 01/01/2024 12:00 | 27.0 |
| … | … |
The column headers must be written exactly as Timestamp (UTC) and Power (MW).
What goes in each column?
- Timestamp (UTC): The date and time of each reading, in
dd/mm/yyyy HH:MMformat (for example01/01/2024 13:30), kept consistent all the way down. Enter the times in the local time of your site - no conversion is needed despite the UTC (Coordinated Universal Time) label on the header. - Power (MW): The actual power the site produces at that moment, in megawatts (MW). This is the real output of your system, as it would be measured at the grid connection, so any inverter, turbine, wiring, and other losses are already included.
The Power column is not the following:
- Not the rated size: It is not the peak or nameplate rating of the site. That is entered separately when the asset is set up.
- Not a fraction: It is not a percentage or a fraction of capacity. A 50 MW site running at half output is
25, not0.5or50%.
What data does the file need to cover?
- One full year, starting at 00:00 on 1 January.
- Consistent spacing, with readings every 15, 30, or 60 minutes - pick one and keep it the same throughout.
- No gaps and no repeats: every interval from the start to the end of the year should appear once, in order.
In a leap year, 29 February can either be included or left out - both work.
Examples
A valid solar file sits at 0 overnight, climbs through the morning, peaks around midday, and drops back to 0 in the evening:
Timestamp (UTC),Power (MW)
01/01/2024 00:00,0
01/01/2024 06:00,0
01/01/2024 09:00,9.9
01/01/2024 10:00,19.2
01/01/2024 12:00,27.0
01/01/2024 15:00,6.0
01/01/2024 18:00,0
...continues for the rest of the year...
A wind file has no daily shape - output varies through the day and night with the weather:
Timestamp (UTC),Power (MW)
01/01/2024 00:00,12.4
01/01/2024 01:00,8.1
01/01/2024 02:00,15.7
01/01/2024 03:00,21.3
01/01/2024 04:00,18.9
01/01/2024 05:00,6.2
...continues for the rest of the year...
Solar: PVsyst files
If a solar site is modelled in PVsyst (a photovoltaic system simulation tool), the PVsyst output file can be uploaded directly - there is no need to reformat it into the two-column layout above. The generation is read from it automatically.
Wind: match the weather year
Because a wind profile is used exactly as uploaded - the model does not reshuffle or reorder it - wind generation and power prices should reflect the same weather conditions. Match the profile to the weather year used in the forecast for your market. See Wind for the weather year used in each market.
For solar, the model reshuffles the uploaded profile within each month to align it with the forecast weather year, so exact weather-year matching is less critical.
Quick checklist
- A CSV file.
- Two columns named exactly
Timestamp (UTC)andPower (MW). - Power is the site’s actual output in MW - not its nameplate size, not a percentage.
- Times in one consistent format, spaced every 15, 30, or 60 minutes.
- Covers a full year starting 00:00 on 1 January, with no gaps or repeats.