Estimate and compare the real total cost of ownership (TCO) for security log retention across cloud object storage and managed SIEM platforms. Model daily log ingestion, gzip/zstd compression ratios, hot vs. cold retention tiers, and data egress fees during incident response investigations.
How to Model Security Log Retention and Egress Costs
Security Operations Centers (SOC) and compliance frameworks (PCI-DSS, HIPAA, SOC 2, ISO 27001) typically mandate retaining audit logs for 90 days in hot searchable storage and up to 1–7 years in cold archive storage. While raw object storage appears inexpensive on paper, hidden costs in ingestion volume pricing, data retrieval fees, and network egress charges often dominate the monthly cloud bill.
1. The Impact of Log Compression Ratios
Raw text logs (JSON, Syslog, Windows Event XML, Nginx access logs) contain high redundancy. Compressing log batches using gzip or zstd (Zstandard) before writing to object storage typically achieves a 6:1 to 10:1 compression ratio:
- Daily Compressed Volume: $\text{Compressed GB/day} = \frac{\text{Raw GB/day}}{\text{Compression Ratio}}$
- Steady-State Storage: $\text{Stored GB} = \text{Compressed GB/day} \times \text{Retention Days}$
Note that while object storage providers (AWS S3, Cloudflare R2, Backblaze B2, Wasabi) bill strictly on the compressed bytes stored on disk, traditional SIEM platforms (such as Splunk Cloud or AWS CloudWatch Logs ingestion) bill based on the uncompressed raw volume ingested per day.
2. Egress and Retrieval Traps During Incident Response
Storing terabytes of logs in cold tiers like AWS S3 Glacier Flexible Retrieval reduces baseline monthly storage costs to ~$0.0036/GB. However, if your query engine or SIEM runs outside of the storage provider's network, rehydrating and transferring those logs triggers two separate charges: per-GB retrieval fees and standard internet egress fees ($0.09/GB on AWS). Zero-egress object storage providers like Cloudflare R2 and Wasabi (or Backblaze B2 within its 3x stored volume free egress allowance) eliminate network transfer penalties when querying logs from external compute clusters.
Frequently Asked Questions
What compression ratio should I use for JSON or Syslog data?
zstd) or Gzip. If logs are converted to columnar formats like Apache Parquet, compression and query efficiency improve even further.