Load profile
Which load profile type you need, which format applies and what to do without data of your own.
The load profile is your electricity consumption over a year and the basis of every sizing: Furo calculates the economically optimal battery on this time series. You enter it in the step Available Data.
Which load profile type you have
As soon as you answer "PV system planned or installed?" with Yes, you specify the form your load profile (Lastgang) comes in. That choice determines which data you upload and how Furo reconstructs your consumption for the optimization.
Total Consumption (Gross)
Pure electricity consumption with no PV system taken into account, for example for a PV system that isn't there yet but is planned.
Grid Consumption (Net)
The actual grid import after the PV self-consumption coverage has been deducted. With this option you additionally upload a PV surplus profile; from it Furo reconstructs your total consumption profile for the optimization.
Total Consumption (Gross) and Grid Consumption (Net) lead to the same optimization result. Simply pick the option that matches the data you have. Careful: a net load profile (Grid Consumption) already has the PV production deducted. If you pick the wrong type, the PV is counted twice.
Full feed-in
No self-consumption: the entire PV production is fed into the grid (a full feed-in site, Volleinspeiser), typical for ground-mounted projects without consumption of their own. No load profile is needed; optionally you enter a constant base load for a small amount of self-consumption. In the results this case appears as the use case "Shifted PV feed-in (SPV)".
Further reading: Shifted PV feed-in – between regulation and return (blog article)
Which type fits your data
What counts is what your meter delivers: total consumption, or only the grid import after the PV has been deducted. That determines the type — and which PV profiles you enter on top.
| You have … | Load profile type | Additionally per PV system |
|---|---|---|
| no PV system | Total Consumption (Gross) | – |
| a consumption load profile, PV only planned | Total Consumption (Gross) | Type: Planned, production profile optional |
| a grid import load profile from the meter, existing PV feeds in the surplus | Grid Consumption (Net) | Type: Existing system + PV Surplus/Export Profile |
| a grid import load profile plus an additionally planned system | Grid Consumption (Net) | surplus profile for the existing system, Planned for the new one |
| no consumption, everything goes into the grid | Full feed-in | – (optionally a constant base load) |
Which PV profiles belong with it
The PV Production Profile is the system's entire production, the PV Surplus/Export Profile only the part fed into the grid — this mix-up holds people up most often. You enter both in the block of the respective system under PV Production, not with the load profile upload. The question "Profile available?" only unlocks the optional production profile; the surplus profile appears as soon as the type is set to Existing system.
You add several existing systems or orientations via the plus symbol; one shared surplus profile covers them together.
Without a production profile of your own, peak power, tilt and azimuth are enough: Furo calculates the production from weather data for your site. A missing surplus profile cannot be replaced that way, because only it shows which part of your production was not consumed on site.
Don't switch the load profile type just to get past the input. A net load profile that you declare as Total Consumption (Gross) counts the PV twice and leads to a far too small optimal battery. If you're missing a profile, derive it from the ones you have with the Data Assistant.
Format and resolution
You upload your load profile as a CSV or Excel file (.xlsx); Furo converts Excel files automatically. You don't need to rebuild your file for this: column headers can be named freely — during the upload you pick yourself which column is the timestamp and which is the value. Furo recognizes semicolon, comma, tab and pipe as separators, and both the German decimal comma and the international point. If a profile is already in place, just drag the new file onto the preview to replace it — this works for every profile upload.
Period and resolution
Between the first and the last timestamp there must be 365 to 366 days, in 15-minute or hourly values (35,040 or 8,760 values, with a tolerance of about two days). Furo detects the resolution itself.
It does not have to be a calendar year: a rolling year, say from July to June, is just as valid, and Furo doesn't require a particular start date.
Unit kW or kWh
After Validate Data you pick the Uploaded unit of your file for quarter-hourly values. If it contains energy amounts (kWh per quarter-hour), Furo converts them into power via the interval length. If you pick kW here although the file contains quarter-hourly kWh, Furo calculates with a quarter of your actual power — load and PV feed-in come out correspondingly too small. For hourly values the choice does not appear, because kWh per hour and kW are numerically the same. Your prospects see the same choice when they upload their own load profile in the Light calculator.
Timestamps
Date and time may sit in one field or separately — for separate columns you set Split date and time. Without any timestamp at all you upload only the value column and give a Start Date and a Resolution.
Recognized formats include 01.01.2026 00:15, 2026-01-01 00:15, 2026-01-01T00:15, 1. Jan 2026 00:15 as well as times as 0:15, 00.15, 0015, 0:15 Uhr and with AM/PM. Seconds and milliseconds are allowed, 24:00 counts as midnight of the following day. Times must fall on full quarter-hours (:00, :15, :30, :45) — some meter exports label each interval one minute early (00:14, 00:29, …); Furo rejects such files, because otherwise the values don't line up with the electricity prices and the grid fee time windows. Appended time zones (Z, +01:00, CET/CEST) are cut off and the time is taken literally.
Two things Furo does not accept: bare Excel serial numbers such as 45658 instead of a date text, and implausible date values. If the column doesn't reveal whether day or month comes first — because no value is above 12 — Furo reads day first (German notation) and tells you so.
Daylight saving time
Timestamps are taken as local time, independent of your computer's time zone. Furo recognizes the a/b marking of the doubled October hour, keeps duplicate timestamps only once, and the missing March hour is not an error.
What the messages during the upload mean
Almost all messages under Validation Issues come from four corners: timestamp format, unit, period covered and resolution.
| Message | Cause | What you do |
|---|---|---|
| Invalid timestamps | format not recognized, Excel serial numbers or impossible date values | export the timestamp column as text in one of the formats listed above |
| Invalid value | text, empty cells or units in the value column | only numbers in the value column, the unit belongs in the header |
| Negative values are not allowed in the profile | a sign for feed-in in a profile that only takes positive values | separate grid import and feed-in into separate columns |
| Insufficient data | span under 365 days | export a complete year; check for gaps at the edges |
| Too much data | span over 366 days | trim to one year |
| Invalid time resolution | the number of values matches neither 15-minute nor hourly values | check for even intervals, add missing rows |
| Timestamps are not on the 15-minute grid | times such as 00:14 or 00:29 instead of full quarter-hours | set the timestamps in the file to :00, :15, :30, :45 |
| Start date required | file uploaded without timestamps | give a Start Date and a Resolution |
If you upload further profiles alongside a net load profile, Furo additionally checks them against each other. The red messages you have to fix before you can continue; the orange ones are notices you can keep working with:
| Message | Blocking? | What's behind it |
|---|---|---|
| Different resolutions | yes | load profile and PV profiles must have the same resolution, because the values are netted against each other per timestamp |
| Different start time | yes | the profiles don't cover the same period |
| PV surplus is greater than PV production | yes | surplus and production profile don't match, or the units differ |
| Net load and PV surplus are positive at the same time | no | a site either imports or feeds in, never both at once. It is only reported once both sides are above 10% of their respective maximum — isolated small overlaps from a simulated surplus profile are normal |
For most messages, what you can do about them is written underneath.
If it isn't the format but the raw data itself, you create a validated profile with the Data Assistant. The link in the red message takes you straight there: Furo saves your sizing as a draft, opens a new conversation, attaches the profiles in question and already writes the messages into the chat message — you only add what you know about the data and send it off. You then bring the corrected profile back into exactly this draft with To analysis.
No load profile of your own?
Pick a standard load profile from the Load Library and enter only your annual consumption; Furo scales the profile to that value. Optionally you also give a peak load in kW. For trying things out there is also a Demo load profile.
Raw data or unstructured files?
If your consumption data exists only as an invoice, an unsorted table or an image, you turn it into a clean, validated load profile with the Data Assistant.