← All work · Case study · in progress
Websites · In progress · San Antonio, TX

A 40-year-old skating rink, rebuilt for the next forty.

Skateland West has been on Loop 410 since 1985 — two generations of one family, seven-dollar Thursdays. Their old site was a WordPress blog that barely worked on a phone, paired with a newsletter tool nobody on staff used. We're building them a custom site they own, on hosting they can afford, designed with the people who actually run the place.

ClientSkateland West
StartedAug 2025
Launch41st season
Previewskateland.buford.dev
Skateland West homepage — neon SKATELAND WEST signage on a dark field

The problem.

The old site was a Turbify-hosted WordPress install that took several seconds to load on a phone and didn't show the event schedule correctly. The newsletter was going out from a personal Gmail account off a spreadsheet of addresses, bumping into Gmail's ~400/day cap on busy promo weeks. Bookings were (and still are) handled by a third-party provider the staff knew how to use — that piece worked; we left it alone.

The rink itself runs fine. The software around it had been slowly getting in the way of the business for years.

What we did.

We co-designed with two generations of the family who run the rink day-to-day. Self-hosted Payload CMS, configured so the person posting about cosmic skate night can actually post. Self-hosted newsletter so the monthly SaaS bill goes away. Event schedule built for parents on their phones at 10pm on a Sunday. Side-of-desk over several months, not a six-week sprint.

The visual direction pulls from 80s rink signage — neon, a little scuffed, not ironic. The rink looks like that because it is that.

The tech, briefly.

Next.js on the front. Payload CMS with Postgres on a Hetzner VPS. Listmonk for newsletters, self-hosted. Bookings stay on the third-party provider the staff already knows — we offered to build a custom on-site flow, but rolling our own wasn't worth the new login for the team. The offer stands for when they want to own that surface too.

Hosting dropped from $398/yr (Turbify) to ~$168/yr (Hetzner CPX21) — about $230/yr saved before counting the SaaS tools that fell off the bill entirely. Traffic + effort numbers land here after 30 days on the client's own domain.

Outcomes · measured after launch

Hosting ~$230/yr saved
Turbify WordPress ($398/yr) → Hetzner CPX21 (~$168/yr)
tooling + newsletter savings not counted here — they fell off the bill entirely
Mobile speed measured
Lighthouse + WebPageTest on throttled mobile
old site benchmarks archived; new numbers land at launch
Event signups measured
YoY against same promo calendar
honest comparison needs the 41st-season data we don't have yet
Timeline 8 months
First commit Aug '25 → launch May '26
side-of-desk, not a sprint; client had their own pace

What's next.

Launching publicly in May for the 41st season. Post-launch work tunes the event calendar and newsletter cadence, and we're looking at paid search for birthday-party bookings once the site has a month of live data.

Full technical writeup, with real numbers, on the journal once launch data is in.