# estimateStorageCost

> **estimateStorageCost**(`params`): [`OutputType`](/reference/filoz/synapse-core/warm-storage/namespaces/estimatestoragecost/type-aliases/outputtype/)

Defined in: [packages/synapse-core/src/warm-storage/estimate-storage-cost.ts:42](https://github.com/FilOzone/synapse-sdk/blob/02867010830e172f5bfcdecc7ea8d76c85e913f3/packages/synapse-core/src/warm-storage/estimate-storage-cost.ts#L42)

Estimate what it costs to keep data on FWSS for a period of time, without a wallet or account state.

Each copy is a separate data set paying the size-based storage rate plus the
per-data-set fee. One-time upload fees and the up-front deposit are covered
by [estimateOnboardingCost](/reference/filoz/synapse-core/warm-storage/namespaces/estimateonboardingcost/toc/).

The storage rate is priced from `sizeInBytes` directly. On-chain pricing uses
PDP leaf counts, which add at most 31 bytes per piece; see
[calculateEffectiveRate](/reference/filoz/synapse-core/warm-storage/functions/calculateeffectiverate/) for the exact per-data-set calculation.

## Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `params` | [`ParamsType`](/reference/filoz/synapse-core/warm-storage/namespaces/estimatestoragecost/type-aliases/paramstype/) | [estimateStorageCost.ParamsType](/reference/filoz/synapse-core/warm-storage/namespaces/estimatestoragecost/type-aliases/paramstype/) |

## Returns

[`OutputType`](/reference/filoz/synapse-core/warm-storage/namespaces/estimatestoragecost/type-aliases/outputtype/)

[estimateStorageCost.OutputType](/reference/filoz/synapse-core/warm-storage/namespaces/estimatestoragecost/type-aliases/outputtype/)

## Throws

ValidationError when size, duration or copies are not positive