fshy

Home / Storage

Matrix media

matrix.org · 2 records in Storage · JSON

Records 2

matrix.org/homeserver/pricing/Messagingstorage/matrix-media-repositoryJSONcomparereport an error

Free allowance
Free plan: 10 MB maximum per attachment, 100 MB of attachments per 24 hours, up to 500 MB per 28 days.
Verdict
fails: quotathe free allowance is too small to matter
Cost
free tier
Identity
institution?placeholder, not evidence; card unknown, phone unknown
Binding limit
per-ip-shaping1 GB/24h
Evidence
reported3 sources; a third party said so
Freshness
stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
Free tierFree plan: 10 MB maximum per attachment, 100 MB of attachments per 24 hours, up to 500 MB per 28 days. Premium: 100 MB per attachment, 1 GB/24h, 5 GB/28d. Accounts not on any plan get 500 MB/24h up to 2 GB/28d. So the total is a few GB per month — not a storage provider at all.
unit MB; metered on stored-bytes
Pricenone stated
Limits
  • per-ip-shaping (binding) 1 GB/24h source
Unauthenticated media download is deprecated and already frozen: the spec says servers SHOULD 'freeze' the old /_matrix/media/* endpoints so post-freeze uploads are only reachable via authenticated endpoints. Probed: matrix.org /_matrix/client/v1/media/config -> 401 M_MISSING_TOKEN, unauthenticated /_matrix/media/v3/download/... -> 404. So no anonymous CDN reads.
Identityinstitution (inferred, not read) not published
EgressEgress itself is free ('the HTTPS data transfer to/from the matrix.org homeserver' does not count towards limits), but that is irrelevant at a 500 MB/28-day ingest rate.
Per-object capnot stated
Retentionnot stated
Interfacerest rest
ToolingExcellent — the Content Repository API is a real spec, mxc:// URIs, every Matrix client library implements it. Self-hosted Synapse has no such caps (only max_upload_size, default 10M historically).
Composes withAny federation of homeservers multiplies it, but you are then running the homeservers yourself, which is just 'buy a server'. On the public homeserver there is no chaining path: limits are per-account and the 28-day cap is the binding one.
ReliabilityStable, but the 28-day rolling cap means an upload-heavy workload simply stops. matrix.org also states pricing is not final and free users 'may be changed to a free plan in the future'.
Parsed numbers
  • has-free-tier 1
  • per-ip-shaping 1 GB
Evidence 3
datesourcewhat it proved
2026-10-21matrix.org/homeserver/pricing/'Size of attachment that can be sent | 10MB maximum per attachment ... Total size of attachments | 100MB per 24 hours, up to 500MB per 28 days'
2026-10-21spec.matrix.org/latest/client-server-api/#content-repository'The unauthenticated download endpoints have been deprecated ... servers SHOULD freeze'
2026-10-21matrix.org/_matrix/client/v1/media/configprobe: GET -> 401 M_MISSING_TOKEN; unauth media download -> 404
More fields 1
dead end{"failure_class": "quota","why": "Free plan: 10 MB maximum per attachment, 100 MB of attachments per 24 hours, up to 500 MB per 28 days. Premium: 100 MB per attachment, 1 GB/24h, 5 GB/28d. Accounts not on any plan get 500 MB/24h up to 2 GB/28d. So the total is a few GB per month — not a storage provider at all.","retry_when": null,"first_recorded": "2026-10-21"}
Unknown values 4
  • per object cap notes: the field may be stated in a source that was not read
  • per object cap stated: the field may be stated in a source that was not read
  • retention notes: the field may be stated in a source that was not read
  • retention stated: the field may be stated in a source that was not read

matrix.org/homeserver/pricing/Messagingstorage/matrix-org-homeserverJSONcomparereport an error

Free allowance
Free plan: 10 MB max per attachment, 100 MB per 24 h, capped at 500 MB per 28 days.
Verdict
fails: quotathe free allowance is too small to matter
Cost
free tier
Identity
institution?placeholder, not evidence; card unknown, phone unknown
Binding limit
noneno named constraint binds
Evidence
reported3 sources; a third party said so
Freshness
stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
Free tierFree plan: 10 MB max per attachment, 100 MB per 24 h, capped at 500 MB per 28 days. Premium: 100 MB per attachment, 1 GB/24 h up to 5 GB/28 days. Accounts not yet on a plan get fair-use 500 MB/24 h and 2 GB/28 days.
unit MB; metered on unstated
Pricenone stated
Identityinstitution (inferred, not read) not published
EgressFree, no metered egress, and media is served through the homeserver so you can front it with Cloudflare.
Per-object capnot stated
Retentionnot stated
Interfacerest rest
ToolingMatrix client-server API /_matrix/media/v3/upload and /_matrix/client/v1/media/download. Every SDK supports it (matrix-nio, matrix-js-sdk, mautrix-*); Element is the reference client.
Composes withFederated: N accounts on N homeservers each get their own 500 MB/28-day allowance, and media federates across servers. But per-account throughput is the binding constraint, not the divisor.
Reliabilitymatrix.org introduced paid plans in 2025 and explicitly reserves the right to move existing users onto the free plan's tighter limits, so quotas can shrink under you. Synapse also purges unreferenced media.
Parsed numbers
  • has-free-tier 1
Evidence 3
datesourcewhat it proved
2026-10-21matrix.org/homeserver/pricing/'Size of attachment that can be sent: 10MB maximum per attachment (Free) / Total size of attachments and data usage: 100MB per 24 hours, up to 500MB per 28 days (Free)'
2026-10-21matrix.org/homeserver/pricing/'Data usage limit of 500MB per 24 hour period, up to a limit of 2GB per 28 days apply' (fair use, no plan)
2026-10-21matrix.org/_matrix/media/v3/download/matrix.org/abcprobe: GET -> 404 M_NOT_FOUND; GET https://matrix.org/_matrix/client/v1/media/download/matrix.org/abc -> 401 M_MISSING_TOKEN (authenticated media enforced)
More fields 1
dead end{"failure_class": "quota","why": "Free plan: 10 MB max per attachment, 100 MB per 24 h, capped at 500 MB per 28 days. Premium: 100 MB per attachment, 1 GB/24 h up to 5 GB/28 days. Accounts not yet on a plan get fair-use 500 MB/24 h and 2 GB/28 days.","retry_when": null,"first_recorded": "2026-10-21"}
Unknown values 4
  • per object cap notes: the field may be stated in a source that was not read
  • per object cap stated: the field may be stated in a source that was not read
  • retention notes: the field may be stated in a source that was not read
  • retention stated: the field may be stated in a source that was not read