{
"path": "/posts/margin-downtime-03-07-26",
"site": "at://did:plc:3i6uzuatdyk7rwfkrybynf5j/site.standard.publication/3mgh7kwenww22",
"tags": [
"margin",
"downtime",
"imdumb"
],
"$type": "site.standard.document",
"title": "Margin Downtime 03/07/26",
"content": {
"$type": "xyz.scanash.content",
"items": [
{
"$type": "xyz.scanash.block.heading",
"level": 1,
"plaintext": "Introduction"
},
{
"$type": "xyz.scanash.block.text",
"plaintext": "I tried to migrate Margin out of Railway, but really didn’t know where…"
},
{
"$type": "xyz.scanash.block.heading",
"level": 2,
"plaintext": "Fly.io"
},
{
"$type": "xyz.scanash.block.text",
"plaintext": "I tried initially to move the main backend and web app to Fly.io, that’s fine, but I realized that with all the traffic I was probably going to regret that."
},
{
"$type": "xyz.scanash.block.heading",
"level": 2,
"plaintext": "Neon, Supabase, and other one I forgot the name of"
},
{
"$type": "xyz.scanash.block.text",
"plaintext": "Our backend just doesn’t like Neon, Supabase doesn’t support IPv6 so I couldn’t run the migration (I don’t have IPv6), and the other one just was slow."
},
{
"$type": "xyz.scanash.block.heading",
"level": 2,
"plaintext": "Hetzner"
},
{
"$type": "xyz.scanash.block.text",
"plaintext": "When we were in Hetzner before, it crashed the entire network. But, why not give it another try? So I deployed a cost-effective VM and later scaled to cx33."
},
{
"$type": "xyz.scanash.block.text",
"plaintext": "That’s where we are at now, hopefully Hetzner doesn’t crash again."
},
{
"$type": "xyz.scanash.block.heading",
"level": 1,
"plaintext": "Donate"
},
{
"$type": "xyz.scanash.block.text",
"plaintext": "If you want to help me try more expensive alternatives that might work better in the future, donate to Margin on Open Collective"
},
{
"$type": "xyz.scanash.block.text"
}
]
},
"description": "Margin went down...",
"publishedAt": "2026-03-08T02:10:59Z"
}