# MAX_UPLOAD_SIZE

```ts
const MAX_UPLOAD_SIZE: 1065353216 = 1_065_353_216;
```

Defined in: [packages/synapse-core/src/piece.ts:38](https://github.com/FilOzone/synapse-sdk/blob/1d6c4b9fe34534bf1087dfe41491b72be0b46858/packages/synapse-core/src/piece.ts#L38)

Maximum upload size currently supported by PDP servers.

1 GiB adjusted for fr32 expansion: 1 GiB * (127/128) = 1,065,353,216 bytes

Fr32 encoding adds 2 bits of padding per 254 bits of data, resulting in 128 bytes
of padded data for every 127 bytes of raw data.

Note: While it's technically possible to upload pieces this large as Uint8Array,
streaming via AsyncIterable is strongly recommended for non-trivial sizes.
See SIZE_CONSTANTS.MAX_UPLOAD_SIZE in synapse-sdk for detailed guidance.