"How big a disk do we need?" is usually answered with a guess and a large safety margin, or not answered until the disk fills. It can be worked out in five minutes, and the answer often changes which PC you put in the panel.
This guide uses figures measured with Vault during a week-long soak on Windows: 2,500 signals from a simulated 20 MW, 40 MWh battery site, logged at one second over OPC UA, with no deadband.
The short answer
For that site, Vault stored 572 MB a day. That is about 17 GB a month and 209 GB a year. A 500 GB drive holds roughly two years with room to spare; a 128 GB drive, common in panel PCs, fills in under six months.
Your figure will differ with your signal list, so here is how to work it out.
Step 1: count samples, not signals
The number that drives storage is samples per second, not signal count. With OPC UA subscriptions the server only sends a value when it changes, so a breaker position or a cycle counter costs almost nothing, while a noisy current costs one sample every interval.
In the soak, 2,500 signals produced a mean of 1,058 samples a second, or about 91 million a day. That ratio, roughly 0.4 samples per signal per second at a one-second rate, is typical of a battery site where most signals are statuses, temperatures and counters, and a minority are fast-moving electrical values.
A quick way to estimate it for your own list:
| Signal type | Typical share of a BESS signal list | Samples per second at 1 s |
|---|---|---|
| Electrical values (power, current, voltage, frequency) | 15–25 % | close to 1 each |
| Temperatures, SoC, SoH, slow analogues | 30–40 % | 0.1–0.5 each |
| Statuses, alarms, positions, counters | 40–50 % | close to 0 each |
If you are polling Modbus rather than subscribing, a logger may store every poll whether or not the value changed. Check, because that can multiply storage several times.
Step 2: bytes per sample
How many bytes each sample takes on disk depends on the historian's storage format. With lossless compression it varies with the data:
- Regular, steadily changing analogues compress best. In Vault's load test, 3,000 noisy two-decimal values at one second took 2.35 bytes a sample on disk, overheads included.
- A realistic site mix costs more per sample, because slow signals still pay a small fixed overhead per stored chunk. On the soak it came to 6.3 bytes a sample on disk, including the file's indexes and summaries.
Without compression, a timestamp, a double-precision value and a quality byte take about 17 bytes, so either figure is a large saving. If you know nothing else about a historian, assume 5 to 8 bytes a sample and ask the vendor for a measured figure.
Step 3: the arithmetic
Daily storage is samples per second × 86,400 × bytes per sample.
For the soak: 1,058 × 86,400 × 6.26 ≈ 572 MB a day.
| Period | Storage at 572 MB a day |
|---|---|
| One day | 0.57 GB |
| One month | 17 GB |
| One year | 209 GB |
| Five years | 1.04 TB |
Step 4: leave headroom
Do not plan to fill the disk. Leave room for Windows and its updates, backups taken to the same drive before they are copied off, and the historian's own housekeeping. Vault warns at 80 % full, starts removing the oldest sealed days at 90 % and stops collecting, with the gap marked, at 95 %. Plan to use about 70 to 80 % of the drive.
So a 512 GB SSD gives roughly 380 GB for records, which is about 22 months at this site's rate. A 1 TB drive gives over three and a half years.
Step 5: decide what to compress
If the disk is fixed, compression is the lever. A deadband on slow analogues such as temperatures, state of charge and HVAC values can cut their share several times over. Keep it off the signals that are used as evidence: active power at the point of connection, frequency, setpoints and anything used to judge service delivery. Those should be kept raw.
Whatever you choose, make sure the historian records which rule applied to which signal and says so in exports. A value removed by a deadband must not look like a value that was never received.
What about the SSD's lifetime?
At 572 MB a day of records, the drive sees well under 1 TB of writes a year, even allowing for logs and file sealing. A typical 500 GB SSD is rated for hundreds of terabytes written. Endurance is not the constraint for a single-site historian; capacity is.
A checklist for the panel PC
- Count samples per second, not signals.
- Use a measured bytes-per-sample figure for the historian you are buying.
- Plan to use 70 to 80 % of the drive.
- Check the actual SSD size in the panel PC you are specifying; 128 GB is common and fills quickly.
- Decide retention up front: two years on site, with older years exported to Parquet for the archive, is a sensible default.
If you want to try the arithmetic against your own signal list, send it to us and we will run it. The Vault specifications list the disk-management rules in full.