Surge.sh
surge.sh · 2 records in Storage · JSON
Records 2
- caveatSurge.sh
Storagefree tieridentity anonymous?card?limit per-object-capevidence reportedstale on 2026-11-05
- fails: quotasurge.sh as a bulk archive (naive)
Storageidentity email?card?evidence reportedstale on 2026-11-05
Surge.sh
Storage- Free allowance
- Free plan: unlimited projects and unlimited publishes; each project capped at 450 MB and 10,100 files.
- Verdict
- caveatusable, with a named limit or an unprobed read path
- Cost
- free tier
- Identity
- anonymous?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- per-object-capno per-file cap documented but it inherits the project cap
- Evidence
- reported4 sources; a third party said so
- Freshness
- stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
| Free tier | Free plan: unlimited projects and unlimited publishes; each project capped at 450 MB and 10,100 files. No account-level byte quota. unit objects; metered on unstated |
|---|---|
| Price | none stated |
| Limits |
450 MB and 10,100 files per project (hard: 'Aborted - Unable to publish. Application too large'); no bandwidth figure published; no per-file cap documented but it inherits the project cap. Re-publishing replaces the whole project (full-sync deploy), so appending one file re-uploads the directory. |
| Identity | anonymous (inferred, not read) not published |
| Egress | No bandwidth quota or metering is documented anywhere on the free plan; every project is served from all 10 of Surge's own edge nodes ('Every project—free or paid—serves from all of them'). |
| Per-object cap | no per-file cap documented but it inherits the project cap |
| Retention | not stated |
| Interface | rest, cli rest |
| Tooling | Official surge CLI (npm, ~free) and a documented raw REST deploy API: PUT /:domain with Basic auth, Content-Type: application/gzip, a gzipped tarball body plus file-count and project-size headers. That is directly scriptable, no CLI needed. |
| Composes with | Unlimited projects x 450 MB = arbitrary total per account; unlimited free accounts (email+password in-terminal, no card). Sharding is natural because each project is just a folder. |
| Reliability | Deploy is full-replace, not incremental — a slow link makes each publish expensive. Free tier has no stated SLA and no published bandwidth ceiling, so behaviour at 1 TiB/day is unproven. |
| Parsed numbers |
|
Evidence 4
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | surge.sh/docs/cli/publishing | 'Projects are limited to 10,100 files and 450 MB.' |
| 2026-10-21 | surge.sh/docs/platform/plans | 'The core of Surge costs nothing, without trial windows or project caps: Unlimited projects and publishes' |
| 2026-10-21 | surge.sh/docs/api/deploys | 'PUT /:domain ... The body is a gzipped tar archive ... file-count / project-size headers' |
| 2026-10-21 | surge.sh/ | probe: curl -D - -> HTTP/1.1 200, Server: cloudflare, Accept-Ranges: bytes (edge is CF-fronted) |
Unknown values 3
- per object cap notes: 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
- Free allowance
- 450 MB / 10,100 files per project and every publish is a full gzipped-tarball replace, so a 450 MB project costs 450 MB of upload per change.
- Verdict
- fails: quotathe free allowance is too small to matter
- Cost
- not stated
- Identity
- email?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- noneno named constraint binds
- Evidence
- reported2 sources; a third party said so
- Freshness
- stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
| Free tier | 450 MB / 10,100 files per project and every publish is a full gzipped-tarball replace, so a 450 MB project costs 450 MB of upload per change. Only viable if projects are written once and… unit none; metered on none |
|---|---|
| Price | none stated |
| Identity | email (placeholder) not published |
| Egress | not recorded |
| Interface | unknown |
| Tooling | not recorded |
Evidence 2
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | surge.sh/docs/cli/publishing | the text of Free tier, above |
| 2026-10-21 | surge.sh/docs/api/deploys | cited as the basis of the rejection: 450 MB / 10,100 files per project and every publish is a full gzipped-tarball replace, so a 450 MB project costs 450 MB of upload per change. Only viable if projects are written once and sha |
More fields 1
| dead end | {"failure_class": "quota","why": "450 MB / 10,100 files per project and every publish is a full gzipped-tarball replace, so a 450 MB project costs 450 MB of upload per change. Only viable if projects are written once and…","retry_when": null,"first_recorded": "2026-10-21"} |
|---|
Unknown values 7
- chaining: no value was recorded for this field
- egress terms: no value was recorded for this field
- interface: the access interface was not established
- per object cap notes: no value was recorded for this field
- per object cap stated: no value was recorded for this field
- retention stated: no value was recorded for this field
- tooling: no value was recorded for this field