All Episodes

June 7, 2025 10 mins

Unfortunately I missed my milestone of getting an early release of https://www.skylounge.social deployed during Release Day. But, it wasn’t for a lack of trying. It’s kind of hard to run when it feels like you have a knife in your stomach and you don’t know how to stop the bleeding.

I dig into what attempts I made to optimize the NextJS App for https://www.starterpacks.net to utilize fewer resources on Vercel (spoiler alert, unsuccessfully), what the usage and costs were, and what I ultimately did to try to stabilize the costs until I can start to get the site earning more than it costs to host.

To follow along, you can find me at https://www.ryanhefner.com, follow me on Bluesky @ryanhefner.com (https://bsky.app/profile/ryanhefner.com) and keep up with the show on https://www.allplay.fm and @allplay.fm (https://bsky.app/profile/allplay.fm).

Help yourself, while supporting the show, by trying some of the services that I use, and highly recommend:
Transistor FM (https://transistor.fm/?via=allplay)
Fathom Analytics (https://usefathom.com/ref/EKONBS)

#buildinpublic #podcast #startups #webdevelopment  #webdesign #bluesky #indiedev #bootstrapping #indiehackers

Mark as Played
Transcript

Episode Transcript

Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Ryan (00:00):
Hey. How's it going? I'm Ryan Hefner, and this is the All
Play podcast. So I wanted toaddress the $800 gorilla in the
room. Essentially, a littleupdate on starter packs and
what's going on over there.
So, you know, last month, I wasreally trying to get focus on
skylounge.social, which is likea Twitter spaces alternative

(00:23):
that I'm kind of focusingtowards blue sky. And I really
wanted to get that out by May 30and, in line with, the this
release day thing that was goingon. Well, it turns out I missed
that milestone unfortunately.And it wasn't because I wasn't
trying, but, you know, it'skinda hard to run when you have

(00:44):
like a knife in the gut andyou're bleeding out. So
essentially, I I got into thison a earlier episode where I I
was talking about how, starterpacks ended up costing me about
$500, last month for the Vercelbill for hosting the site.
And that was from April 17 untilMay 17. So I had to address

(01:06):
that. I was thinking that,alright, I'm gonna do a few
quick little things. I noticedthat the profile pages seem to
be the most traffic pages on thesite. I figured, I have
2,000,000 writes in the plan and10,000,000 reads, so that should
definitely shave off some ofthe, function requests and the
function duration stuff thatseemed to be the most expensive

(01:27):
stuff that I was dealing with.
And alright. I said, alright.I'm gonna get those pages up.
I'm gonna do the, incrementalstatic regeneration on those,
which essentially, you know, itrenders the page once. It incurs
like whatever the functionduration stuff is for that
initial render.
And obviously, it should just,pull from the reads from that

(01:51):
point forward because it shouldbe all cached and everything
else. I was thinking that wasgonna be good. Unfortunately, it
doesn't look like that way. Soas I kinda rolled that out and
get and troubleshooted some ofthe, you know, the profile, and
the authentication refreshingafter the fact that because it's
basically rendering a logged outpage, and I need to basically
kinda log you back in once onceyou're on the client assuming

(02:14):
that you have, the tokenavailable. I got all that
squared away.
I was looking into it. Stuffstill seemed a little bit up,
you know. Was like watchingthese numbers still just kinda
go crazy over on the Vercelside. And, so then I threw
Cloudflare into it thinkingmaybe it would shape like
capture any sort of like weirdbots or denial service or

(02:37):
whatever else. I don't have anyof the, you know, under attack
mode stuff turned on.
I probably maybe I should turnit on to see what happens, see
if some of the stuff falls out.But, but actually the traffic
still kinda looks somewhatlegit. So I didn't wanna, like,
unnecessarily, impact, peoplevisiting the site or whatnot. So

(02:59):
I didn't do any of that, but thenumbers just weren't going down.
If anything, they were going upfaster than they were the month
before, which obviously waspreviously $500.
And so getting into it, it itdidn't work. The ISRs, the
rights, I like I said, I got2,000,000. I ended up going

(03:20):
48,000,000 over. So that's atotal of 5,000,000 rights that
cost me another hundred and $92.The edge request which was, you
know, I get 10,000,000 a month.
I over 49,000,000. So 59,000,000edge requests, that was another
one twenty five. Fast origintraffic, I get 10 or a hundred

(03:41):
gigabytes. It went over oneterabyte, that was another $60.
Now this is where I think mylogic of like the ISRs maybe
would have played out better ifthe function duration wasn't so
crazy.
I'm gonna leave that one at theend because that's the real
whammy. Basically, ISR reads are$10,000,000 10,000,000 per

(04:02):
month. I went over by 25, so atotal of 35,000,000, and then it
only cost me $10. So I thinkthat's where, you know, if the
if I could have figured outwhat's going on with the
function duration and I turnedon fluid compute, which Vercel
says that that kind of keepsfunctions warm and lets them do
more stuff while they're kind ofspun up. Although that doesn't

(04:25):
seem like that that did thetrick either.
I turned that on. Actually, Ithink I maybe I should even have
played around with turning itoff to see what happens, but
it's so hard to kind of figureout where things are ebbing and
flowing that, I just I justdidn't take the time to do it.
But so yeah. So basically, thefunction duration is the big

(04:46):
whammy. It's like $436.
And that that's only up tilllike June 3, you know. I mean, I
tried to tackle this likerelatively early in the month. I
mean, it's I guess it's been acouple weeks and that's where
it's at. So it basically totaledup to $858, up from my last

(05:14):
month's charge of $5.35. Youknow, I thought I was gonna take
that one month on the chin andaddress it in, the June invoice,
but that that doesn't seem to bethe case.
So I, yeah, I ejected. I endedup moving the site over to
render. That's actually where Ialready had the API and the fire

(05:34):
hose and everything else set up.So it was a pretty seamless
transition over. There were afew things I had to figure out
with.
For some reason, the the sitebuilds and the deploys were
sometimes timing out and doingsome wacky stuff, so I had to
troubleshoot that. Eventuallygot those figured out. Had to
disable an NX daemon that Ithink that was using too much

(05:57):
memory during the the builds orthe deploy process. Little funny
stuff like that. But again,these are those things that you
don't really realize, thatyou're getting for free when
you're deploying on Vercel,because they just make it so
easy and they have everything soalready, like, pre configured
and wired up for next app to bedeployed there.

(06:17):
So that was one lesson learned.I got it I got it all spun up.
Then I realized that actuallythe the ISR stuff, the caching
that that is required for thatis actually you configured via a
cache handler. So you set thatup in your next next dot config.
And looking into it, I didn'treally realize this that the

(06:40):
most popular open source librarythat people are using for the
cache handler that also kind ofcan be configured to use a Redis
instance is actually onlysupports up to Next 14, and I'm
at next 15 dot three.
So unfortunately, that doesn'tseem like that's working, once I

(07:01):
set that up. I looked intowriting my own. I probably am
gonna have to get end up goingthat route. But right now, the
site is configured on on render.It is not using the reticence
since I so I don't think it'sreally getting the amount of
cache handling and theperformance optimizations that I
could get there.
Unfortunately, I'm gonna have tosink some more time and figure
out how to button that up. Butat least I can sleep a little

(07:26):
safer at night knowing that, thesite's only gonna cost me well,
right now, I have it on a $85 amonth plan. I think that's
probably a little bit morejuiced up than it needs to be. I
think once I get the cashhandler figured out and the
Redis instance, which is costingme another $10. So I'm I'm in
$95, for hosting the site overon Render.

(07:49):
Just for the front end, mindyou. So I'm I'm also paying for
the API and the fire hose, butactually those things only cost
me $7 a month each. They'rethey're pretty cheap and pretty
light. So so yeah, that's justthat's just where things are at.
So at least I have the, youknow, the 8 what was it?

(08:10):
$8.58 or something like that. Ihave that down to basically $95,
and I think it'll remain there.And if anything, I can get that
down to the 25 plan plus the 10,so maybe $35 a month. Again, if
I write that cash handler, Iwill open source that, share it
with anyone else who's dealingwith these kind of similar

(08:31):
issues. But, yeah, that's justwhat ended up happening.
You know, it's I was trying tomake progress. I was trying to
move forward on Sky Lounge.Actually, I mean, I don't think
it's that far off, but at thesame time, I just there was just
there's no way that I could payany more hosting toward to
Vercel for this site that'sreally not returning much, you

(08:54):
know. I think, I wanna keep itup. I don't wanna, like, have to
shut this site down prematurelyjust because it's getting a lot
of traffic and costing too much.
But at the same time, there'sjust no way I could I could
justify keep shelling this stuffout. So I do have a call coming
up with Vercel, and I'll shareanything that I, find out there

(09:15):
as far as how to optimize thesite and maybe reduce the number
of function the functionduration stuff. I don't know. I
mean, I don't know what more Icould do, other than maybe doing
a little bit more of a trade offbetween the data that is
requested server side versuswhat's maybe requested client
side. I've already kind ofplayed around with that stuff.

(09:37):
So I don't know. It's it's kindof a wild one, but just wanna
give you a little quick littleupdate on what's going on, why
Skylounge didn't make it outlast week, what I've been
dealing with with starter packs.Hopefully, some of this stuff
was interesting. Hopefully, noneof you have to deal with a $800,
hosting bill. Or if you do,you're making well beyond that
to justify it.
But that's just where things areat right now with starter packs.

(10:00):
So there you go. I'm RyanHefner. This is the All Play
podcast. I'll be sharing somemore stuff as things come up
regarding starter packs and SkyLounge and whatever else I end
up working on.
And, you can find episodes atallplay.fm. So have a great one.
Later.
Advertise With Us

Popular Podcasts

Crime Junkie

Crime Junkie

Does hearing about a true crime case always leave you scouring the internet for the truth behind the story? Dive into your next mystery with Crime Junkie. Every Monday, join your host Ashley Flowers as she unravels all the details of infamous and underreported true crime cases with her best friend Brit Prawat. From cold cases to missing persons and heroes in our community who seek justice, Crime Junkie is your destination for theories and stories you won’t hear anywhere else. Whether you're a seasoned true crime enthusiast or new to the genre, you'll find yourself on the edge of your seat awaiting a new episode every Monday. If you can never get enough true crime... Congratulations, you’ve found your people. Follow to join a community of Crime Junkies! Crime Junkie is presented by audiochuck Media Company.

24/7 News: The Latest

24/7 News: The Latest

The latest news in 4 minutes updated every hour, every day.

Stuff You Should Know

Stuff You Should Know

If you've ever wanted to know about champagne, satanism, the Stonewall Uprising, chaos theory, LSD, El Nino, true crime and Rosa Parks, then look no further. Josh and Chuck have you covered.

Music, radio and podcasts, all free. Listen online or download the iHeart App.

Connect

© 2025 iHeartMedia, Inc.