Finding a "Ready-Made" Audience and Growing to $20,000/mo

Hello! What's your background, and what are you working on?

I'm Sergey! I turned 30 years old in 2017, and I'm a computer science graduate from Harvey Mudd College. I've been self-employed since 2010, in which time I've started and worked on a variety of my own projects, both to keep myself entertained and to bring in an income.

The most recent of these is ArkServers.io, a game server hosting company I launched in September 2016. There are certain online games, like Ark: Survival Evolved, where many players will rent servers for themselves and their friends to play together. The server software is available for free from the game's creators, but configuring it requires technical skills, and running it around the clock requires reliable hardware and fast Internet.

ArkServers.io takes care of these needs by hosting the game server software for $14 per month. I built a web-based control panel that my clients use to set up the game server exactly how they like, and then I run it on excellent hardware with fast Internet.

As of late June 2017, I am running 1,400 game servers for my customers, and I'm bringing in about $20,000 per month in revenue. I have been growing at 8% per week for the last few months.

  ArkServers.io

What motivated you to get started with ArkServers.io?

I've always liked "___ hosting" as a business idea. I've often noticed that behind most popular open-source projects there's a multi-million-dollar business whose plan is simply to buy or rent some servers, host that open-source software, and offer a web-based control panel for the customer. Think Git, Apache, Sendmail, MySQL, ElasticSearch, and similar services. It's an easy idea to come up with, an easy product to build, and customers are easy to find, since you can just advertise wherever people gather to discuss open-source projects.

Sometimes the potential profit is huge. Companies whose business model is "download Apache for free, set it up, and run it on commodity hardware" are now known as web hosting companies, and they're a multi-billion-dollar industry.

One of the nice things about being a hosting company for a pre-existing product… you have a ready-made audience.

Tweet
Share

Game server hosting is much smaller. The total addressable market is maybe $50 million per year, but that niche size presents an opportunity. Since VCs will never fund a company with so little unicorn potential, and many potential founders would never bother starting one, the whole field has very few competitors — and many of them are less than competent.

My skills and experience are perfect for building a hosting company. I've been making web apps since middle school. My only non-self-employed job was the year I spent at Dreamhost right out of college (2009-2010). Because of that, and my own decade-plus of tinkering, I know a great deal about Linux servers and networks. I know how to get racks full of servers at below-market rates, how to manage those servers, and how to create a web app that the customer will use to control their game — a perfect combination!

My plan was always to expand to many different games, but starting with a single game made sense. It would let me test out the business model, iron out all the businessy stuff, and get some practice with promotion before I had to worry about answering support tickets for issues with dozens of games.

I chose to start with Ark: Survival Evolved because of how much growth potential I saw. Prior to launching, I researched the growth trends of a variety of games through SteamSpy and Google Trends, and Ark was the clear winner.

  Ark: Survival Evolved

Ark: Survival Evolved

How did you fund the creation of the initial product?

I stopped working a "real job" in 2010, and my professional life since then has consisted of creating and launching companies like this one. The semi-passive income from each successful project would fund my living expenses while I built the next one. I launched the first of these profitable companies while I was still in college, but that's a story for another day.

It took about 2 months, working 4-6 hours per day, to create the initial product for ArkServers.io. Aside from paying my living expenses while I worked on this, I needed very little money to launch it. I spent several hundred dollars renting servers that my first customers would use, but by the time that first credit card bill came due, the revenues had more than covered these initial expenses. I didn't start spending on advertising until much later, when I could pay for it out of profits.

What went into building the initial product?

It took me about 2 months from when I started working on the product to when I launched it. I'll cover the product creation in parts.

Part 1: The Job Queue

The first thing I built was a job queue in Go. After doing some research, I found that I was unhappy with all the popular job queues I'd found. Most were married to a single language and framework (usually Rails) and required you to write your application and jobs in that language. I wanted something more flexible, where the jobs themselves would be nothing more than shell commands. This would mean that different parts of my application could be written in different languages, and I could switch languages without having to abandon the job queue.

I chose Go for the job queue because fast concurrency was essential, as was the correctness that comes with using a statically typed, compiled language. I'm still bothered by Go's lack of exceptions and its unique brand of error handling that makes for painfully verbose code. I wouldn't use it for my day-to-day programming — but for this job queue, I have no regrets about using it.

I spent about 2 weeks building the job queue and open sourced it as brooce. I actually tried to promote it on reddit and Hacker News, but my efforts were met with very little interest. I think that's a shame — many other developers could probably benefit from what I've done here, but promoting it was not my primary goal, so I moved on.

About 9 months later, that initial version of brooce is still running with next to no changes from the initial release. It runs hundreds of parallel threads and chews through about 30,000 jobs per day that do everything from configuring servers for customers to monitoring the hardware. I'm really glad I took the time to build it and have no plans to switch away.

Part 2: The Web Application

The web application was written over about a month using LAMP. I realize that advocating for PHP+MySQL won't score me any points here, but I really like them both. PHP is easy to use, runs much faster than most alternatives, and is extremely mature and well-tested. MySQL (in its MariaDB incarnation) also scores points for speed and ease-of-use, and 20+ years of use and abuse have made it largely bug-free. Most importantly, I have tons of experience with these tools and can be immediately productive with them.

I'm quite proficient in HTML/CSS, but designing good-looking pages has never been my strong point. Rather than waste lots of money paying a designer, I just used the Bootstrap library and got something decent-looking and functional up fairly quickly. I've always assumed that the appearance of the site would be revamped with professional help once the money allowed, and I hope to find the time to focus on this in the next few months.

Part 3: Jobs / Background Tasks

As you recall, the job queue I developed simply invokes shell commands without caring what language they're written in. I wrote these jobs as PHP scripts designed to run from the command line. There were maybe 5-10 of them to begin with (and far more now), and they could do things like "set up game server id 5124 on machine 15" or "backup the save files from game server 1934."

What set you apart from your competitors?

The quality of my web application! Nearly all game server hosting companies use the same standard control panel, called TCAdmin2 — basically a cPanel for game servers — and it sucks. Since it was designed to easily generalize to all games, present and future, it doesn't provide a good UI for configuring the options of any one particular game.

Since the hosts didn't create it themselves, it's impossible for them to fix bugs or add the features their customers are demanding. They're stuck getting bug fixes and new features at the same time all of their competitors get them.

For game features TCAdmin2 can't handle, my competitors' websites will often have knowledge base articles telling customers "if you want feature X enabled on your game server, please contact support." This kind of thing annoys customers, slows things down, and cuts into the company's profits by forcing them to hire more support workers.

Also, they can't fully integrate billing, which leads to a constant need for manual fiddling to make sure all customer payments are accounted for, non-paying customers are disabled, etc. This is all stuff that ArkServers.io does automatically.

How have you attracted users and grown ArkServers.io?

As I discussed earlier, one of the nice things about being a hosting company for a pre-existing product is that you have a ready-made audience to promote to. The Ark: Survival Evolved community centers around a game wiki curated by the game's creators. That wiki has a page where hosting companies can list themselves, and I added myself to the list. The list is alphabetical, so naming my company ArkServers.io played in my favor here. That listing was enough for me to start picking up my first few customers.

For your next project, work backwards from what you're pretty sure you can promote.

Tweet
Share

One feature that helped convert visitors into buyers was the 24-hour free trial. None of my competitors have this feature, but for me it was a no-brainer. I let people sign up and immediately get a game server without having to pay anything. If you want to keep your server, just add a credit card before the 24-hour countdown runs out — otherwise it (and any in-game progress you've made) just gets deleted.

Once I had a little bit of profit to re-invest, I experimented with different paid promotion strategies. Google ads for juicy search terms like "ark server hosting" turned out to work extremely well, and Bing ads were pretty good too. The cost per conversion with Bing was half of that with Google, but Bing's low traffic meant that I couldn't buy as many clicks as I wanted.

Reddit ads were a total failure. I found several subreddits dedicated to Ark, including /r/playark. Plenty of people would click the ads, but no one would buy. I never figured out why. I still spend maybe $50 per month on Reddit, just for the mind share and exposure, but Google and Bing have the best ROI and get most of my money.

I also experimented with a referral program, paying existing customers to bring in new people. Nobody cared for a long time, but now that I have 1,000+ customers, a few of them are starting to earn a little money by referring a friend or two.

Through all of this, growth has been pretty steady. It's never been far from the 10% per week growth rate that Paul Graham encourages Y Combinator startups to strive for.

The start of summer brought a boost in growth, too, presumably as kids went on vacation.

                                                                                                                                                               
MonthRevenue
April 1, 20177382
May 1, 201711608
June 1, 201714239
July 1, 201719831

What's your business model, and what are your expenses?

My base plan costs $14 per month, and many customers will maintain multiple game servers with me.

Of that revenue, roughly 4.8% goes to Stripe for payment processing. 33% goes to my data center costs. A fixed amount, typically $2-3k per month, is spent on advertising. $1k per month is spent to pay a contractor who helps out with support. The rest is profit.

Speaking of Stripe, I'm still using it as my only payment processing tool. The lack of PayPal support has irritated many European customers, but there are major advantages, too. Stripe is super-friendly to work with, super-easy to integrate, and can handle automatic monthly billing without any additional input from either me or the customer. The customer just puts in their card number when they sign up and Stripe automatically charges that card every month until they are told to stop.

If I added PayPal, I'd have to spend time developing the recurring billing software myself, and would have to automatically email PayPal users and remind them to pay every month. Anyone who doesn't see the email risks being disabled for non-payment.

North American and African customers don't mind the lack of PayPal, but Europeans seem to get outraged about it. It's probably worth adding PayPal in the future just to appease them, but there are many other things I'd rather work on first.

How do you handle customer support?

The volume of support requests is currently about 20 messages per day, and this is a persistent thorn in my side. I pay a support contractor $1k per month to help by answering some of the questions, but I still have to spend 30-60 minutes per day dealing with support. This takes time away that I'd rather spend coding, and finding ways to minimize this will be a major goal going forward.

One problem is that most support tickets deal with things that we can't really help with anyway. Here are some examples:

  1. People ask about tiny gameplay details that we don't really know about. These are things that they'll have to figure out on their own or ask about on gaming forums.
  2. People complain about in-game bugs and demand that we fix them. Ark: Survival Evolved just recently left beta and is still kind of buggy. The server software we run is closed-source, and we have no ability to fix problems with it.

I added a FAQ page a few months ago, and that helped reduce the support volume a little. I'm also planning to add a forum, which will hopefully let customers help each other out and reduce our support burden further.

One surprising thing I've discovered is that the volume of support has hardly increased, even as our number of customers has doubled over the last 2 months. The support volume seems to be correlated more with growth than with the absolute number of customers.

What are your goals for the future, and how do you plan to accomplish them?

I have more ideas for growth than time to implement them. For now, I'm still only hosting Ark: Survival Evolved servers, but there are many other similar games. Some of my customers have already asked me when I will be able to take over all their game hosting needs, and I hope the answer will be "soon."

These days, 7 Days to Die is growing really fast and Minecraft is perpetually big. I plan to add those first.

I also hope to add more community features that will set me apart from other game hosting companies. Some of my more sophisticated customers will create websites for their game server, and link it up so the site will report who's online now, tell them about the server, let them talk to each other over the web, and offer a way for players to donate towards their bill. I'm planning to auto-generate these kinds of websites for each of my customers.

If you had to start over, what would you do differently?

Ark: Survival Evolved has over 100 configuration options that server admins can set to customize their game server. I took what I thought would be the most important ones and had them configurable through my web application on launch day. Not having absolutely every option available from the start was a huge mistake. I figured that if I had 100+ options available, nobody would notice the handful that were missing.

Instead, everyone noticed immediately. I've since learned that customers mostly want — and demand — a control panel of dials and knobs that resembles a Boeing 747 cockpit and offers extreme flexibility.

When I add games in the future, I will make sure that every setting the game server software offers is available to my customers.

What's your advice for indie hackers who are just starting out?

In past projects that didn't do so well, my most common mistake was not thinking about promotion until I was done building the product.

I'd waste weeks or months building something, and I'd believe that someone somewhere probably would want it. Then I would realize that I had no idea how to start searching for that person. I think this kind of mistake is quite common among hackers — we love building, and any excuse that gets us building faster can bypass red flags in our minds.

My advice is, for your next project, work backwards from what you're pretty sure you can promote.

  • Is there a forum where half of the members would probably need your product?
  • Is there a popular Google search phrase, analogous to my "ark server hosting" that consists of people actively looking for whatever it is you're going to offer?
  • Are there blogs, Twitter hashtags, magazines, Facebook pages, or anywhere else where your potential customers congregate?
  • Are there trade shows where half the attendees would be your potential customers?
  • Are there particular doors you could go knock on?

Make a list of these. Before you've written a single line of code, pretend that you're all done and take inventory of your promotion channels. If you could rank highly for any search phrase, which ones would you want? Google Trends is actually a great help here, since you can test out different words and phrases and see which ones are actually popular. If you could get reviewed on any blog, which blog would help you get hundreds of customers? If you could get the biggest booth at any trade show, which one would have you swimming in new users?

Once you've done this, you'll have a much better idea of whether your product is worth building.

Since VCs will never fund a company with so little unicorn potential… the whole field has very few competitors.

Tweet
Share

I'm not even talking about the step where you learn how to achieve these things (how to rank well for your lucrative search term; how to get that blog to write about you; how to self-promote on Twitter without looking like you're self-promoting on Twitter). These are all things that you can learn later, and there is lots of help available online. I really liked Secret Sauce: The Ultimate Growth Hacking Guide by Vin Clancy, but with a little Googling you should be able to find something that works for you.

Where can we go to learn more?

You can check out my website, ArkServers.io, and see my product for yourself! If you need a game server, I'd love to have you as a customer!

If you want to talk more, just scroll down to the comments section right below! I'd love to hear your questions!

  Sergey Tsalkov

Sergey Tsalkov

Meekro , Creator of ArkServers.io

Want to build your own business like ArkServers.io?

You should join the Indie Hackers community! 🤗

We're a few thousand founders helping each other build profitable businesses and side projects. Come share what you're working on and get feedback from your peers.

Not ready to get started on your product yet? No problem. The community is a great place to meet people, learn, and get your feet wet. Feel free to just browse!

Courtland Allen , Indie Hackers founder

  1. 11

    This is an interesting interview showing how an underrepresented market can make you lots of money. Thank you for your insight Sergey, and open sourcing Brooce. I plan on giving Brooce a thorough look as I might be using it for an upcoming project. Cheers!

    1. 3

      If you try brooce, let me know how it goes for you! I have plans for another release for my own use, and if you have any requests I would consider rolling them in! =)

      1. 1

        Thanks. I was planning on experimenting with Brooce to create a distributed cron worker and runner system for WordPress scaling. I'm still looking into using Brooce, and I might reach out to you later.

  2. 4

    Hi Sergey, great interview, really interesting work. I'm curious about your comment that renting a dedicated server costs you roughly $4-5 (one third of $14, as per the interview).

    It would be interesting to know who you use, as most dedicated servers cost multiples of that - and saving that sort of charge would help lots of people on their own projects. Cheers!

    1. 4

      The trick is to rent beefy servers and cram people on as much as you can without affecting performance. I rely on servers from multiple providers in different continents, since gamers expect to be able to rent a server that is geographically close to them.

      The specific providers I use in each continent are a bit of a trade secret because I'm worried than someone will try to make a list of my rented machines and DDoS them all at once, but I can show you how my rental strategy works. All I do is google for "dedicated server provider" and check out prices and reviews. Visiting the WebHostingTalk forums is also good -- it's definitely a buyer's market over there, and companies will throw crazy deals at you, especially if you're going to be renting 50+ physical servers as I do!

      For example, you can find a physical machine with 128GB of RAM and a very fast CPU for about $150 per month. Let's say you can put 25 ark servers on that machine (and I can!) -- now you're paying $6 in hosting costs per customer while charging them $14!

      1. 1

        Hi Sergey, from your point of view, what would be a minimal frequency for a dedicated server in order to run 25 instances of ark ?
        I have a few CSGO servers and I would like to move them on a single machine.
        I've found an OVH server with this cfg: dual Xeon E5-2630v3 - 16 c / 32 t - 2.4 GHz / 3.2 GHz | 128gb RAM

        From what I've read ARK servers are more CPU demanding than CSGO.

      2. 1

        Thanks for this advice, I'll definitely be checking out those forums!

        It seems like the more customers you have on one machine, the cheaper each customer costs to support. This makes me wonder; when you only had a small amount of customers in the beginning, were your hosting costs greater than your revenue?

        I'm thinking of starting a hosting business, so I'm wondering if this is something I should worry about. If I don't get enough customers, is it possible to still be profitable? Or do I need a certain amount of customers to cover the hosting costs to generate a profit?

        Thanks again for your advice!

        1. 1

          In my case, the math was pretty simple. Each customer will pay $14 per month ($13.33 after Stripe's cut). Let's say your first machine costs $150 per month. This means you need to get 12 customers to break even. Since the credit card bill won't be due for 45 days or so, you've got a bit of breathing room. I had some money coming in from past projects, so I wasn't stressing too much about how fast I'd break even.

          You didn't say what kind of hosting business you're hoping to start, but if you're thinking about doing web hosting, I'd advise against it. That's one of the most saturated markets in the world, and you're up against huge companies that can afford to overspend on advertising, on SEO, and practically give the product away to lock in customers. It's pretty much a commodity now, and is priced accordingly.

          1. 1

            Hi Sergey, hope you're doing well. I have another quick question.

            When you say web hosting is saturated, does that apply to Wordpress hosting?

            1. 2

              It does. The majority of traditional web hosts, companies like DreamHost, Bluehost, etc. are really Wordpress hosts in disguise. I don't recall the exact percentages from when I worked at DreamHost, but Wordpress is a faaaar bigger use case than any other. It might have been bigger than all other use cases combined.

              If you go into something like that, you've got several problems right from the start: First, you're competing for SEO with sites that are 15 years old and have literally millions of backlinks. Google loves old sites; your new site won't stand a chance. Second, you're competing for ad keywords with companies that can afford to spend $200 to acquire a single customer. It'll take them several years to make that back, but they're fine with that.

              I'd suggest looking for something where the big players haven't mopped up 15 years ago. I couldn't tell you what that will be, but I can tell you how to measure it. Google Trends won't tell you what the traffic is for a keyword, but it'll let you compare two keyword. Compare to some well-known things to get a notion of popularity. Second, there are sites like seomoz and majestic that can tell you how many backlinks a particular site has. Use it on the top 10 sites for a keyword, and you have a notion for how hard it is for a new site to break in. If they have millions of backlinks, don't bother.

          2. 1

            Thanks for that explanation! That math is very simple, I'll take it into account while server shopping.

            I was thinking of game server hosting like you have, but I was going to support an obscure game with a small audience so I don't have to pay too much for advertising. I want to see if I can buy a single machine and fill it with customers to make some sort of profit, even if it's small. I'm currently browsing the Web hosting talk forums to try to find good deals.

            1. 2

              "wow, cool idea, a lot of money, I will do the same" ?
              sure, it can work out

              1. 1

                Heh, I guess this is accurate. Not sure what you're implying by pointing this out though.

                1. 1

                  A. While it makes a lot of sense to work in under-exploited niches, it might be of interest to consider the ones where your own skills will provide you unique benefits.

                  B. I find it to be a bit of cheating to ask for more and more details given that you are going to work in exactly the same area. You may happen to end up with "7 Days to Die" and "Minecraft" as the author suggested, instead of "an obscure game" that you consider right now.

                  1. 1

                    My response to A: I currently host servers for a living as a devops engineer.

                    My response to B: I don't see my questions as cheating. I'm not asking technical questions specific to his business, I'm trying to learn about the business side of the hosting industry in general. The questions I'm asking can be applicable to any type of hosting, whether it's video game, blog, image, or some other kind of hosting. If anything, I think the questions others are asking are more in-depth and technical than the ones I'm asking (see the questions about performance and virtualization). Additionally, I'm not dead-set on video game hosting, I'm thinking about it as one of the options. I'm still in the research phase.

                    I think he's doing a great thing by answering everyone's questions and contributing to the IndieHacker community. He hasn't given out any information that I would consider harmful to his business, so I don't see the problem.

                    1. 1

                      Sure, Sergey is doing a great job!

    2. 1

      I'd also like to know which provider is giving these kinds of deals. Please let me know if you find out.

  3. 3

    I'm an European and I'm wondering - what do your European customers dislike about Stripe (or why do they want PayPal)? I have multiple credit cards from Mastercard and Visa and always pay by entering the numbers from there...

    1. 1

      I wish I knew! I hardly bother to advertise in Europe because questions like "where is the paypal?" will flood my support inbox. I thought you guys didn't have easy access to Visa/Mastercard or something!

      1. 1

        Thanks for your interview!
        I think the problem is that only a few people own a cc in Europe(at least in Germany). You need to pay a fee at most banking institutions for the card. Did you think about offering direct debit? https://en.m.wikipedia.org/wiki/Direct_debit This is probably the most common way in germany to pay online.

  4. 3

    How do you provision your servers?
    When you rent a big server, do you use virtualization or something like that and if so did you automated that?

    1. 5

      Adding new physical machines is still done manually because it's hard to automate the act of going to a particular dedicated server company's website and ordering a new machine. I have to rent the machines from multiple companies so I can have them in different continents. Game hosting customers demand that they be able to get a server geographically near them for low ping.

      I do not use virtualization because it costs CPU to run the virtualization layer, and I get nothing in return. Each game server gets its own user account on the Linux machine it's assigned to. I can then use cgroups, configured through systemd, to limit the system resources each game server can get. Virtualization would have made sense if I had to run each game server as root for some reason. Since I don't, standard Linux user accounts provide more than enough isolation between separate users on the same hardware.

      The setup of new game servers for customers is totally automated. When the customer signs up or adds a new server, the PHP app creates the relevant database entries and schedules a brooce job. That job will run remote ssh commands to actually set up and start the server.

      1. 1

        Thanks a lot for your reply.

  5. 3

    What a great interview! Question - I noticed you are offering up to 250 players, how do you test and make sure there are no performance issues in the game?

    1. 4

      The biggest privately hosted Ark server in the world currently has 100 players online and the second-biggest has 70, according to the listing at arkservers.net. The 250 players package is just for show -- no one has ever bought it.

      The most important thing I do for performance is make sure the CPUs are not overloaded. I continuously monitor the CPU load on all machines with a brooce job, and new customers will always go on the least loaded machine. Customers also have a Move button in the control panel, they can move themselves to a different machine if they experience any lag. The move happens in a few minutes, and the customer can do it themselves without having to contact support.

  6. 2

    Hi Sergey,

    Great job on this site and thank you for posting about your experience. I feel like I learned a ton from this blog post and it's pretty much inspiring me to change my life.

    After reading this I feel inspired to ask about this sentence, "It took about 2 months, working 4-6 hours per day, to create the initial product for ArkServers.io". How do you find the drive to work for so long without any promise of seeing a successful product at the end?

    Thanks for your time!

    1. 5

      Hey there! I'm really glad to hear that you got something out of my interview! =)

      What you have to understand is, I didn't need to worry about a "real job" while I was building ArkServers. I created my first profitable company while I was in my junior year of college (2008 or so), and since then I've used the semi-passive income from each project as a runway for the next one. Since it sounds like some people found this interview helpful, I may have to write about those other projects as well!

      What this meant is that I didn't have much else vying for my attention. I'm not married, don't have kids, don't own a house, have few non-nerdy hobbies, and I was 29 when I started ArkServers. If I wasn't writing code, I'd probably be playing whatever new game was hot on Steam. But gaming for several weeks straight eventually gets old for me, and then I feel like I want to build something.

      I love creating pieces of software like this -- don't know why -- I guess it's for the same reason that a writer writes and a painter paints, whatever that is! =)

      I'm sure this is quite unhelpful, but I rarely have had to force the motivation. If I don't feel like making anything new, I might hop on Steam and play through Dishonored 2. After a few weeks of gaming, I'll be sick of it and some software ideas will be spinning in my head again! If customers then start throwing money at me, the excitement of that keeps me motivated! If not, I move on.

      Speaking of moving on, the vast majority of my projects have been unsuccessful, mostly for reasons I discuss in the "advice" section of my interview. In the worst case, I spent 18 months trying to build something that wasn't getting any closer to a money-making product! By the end of it, I was feeling symptoms of depression and dreaded waking up each day. I should have abandoned it much sooner, but my feeling of obligation to my business partners (not to mention the sunk-cost fallacy) kept me chained.

      Anyways, good luck to you in your own endeavors! If you want to talk more, my email is in my profile here, or you can post on this forum!

      1. 1

        This is a very insightful response. Thanks for sharing those details about your work habits. That's great that you don't have to force motivation, it seems like you truly enjoy doing it. I struggle with working on my idea because I'm so tired from my job. I'm seriously considering taking time off to focus on building a business for a few months.

        I'd love to hear more details about your other passion projects! I'm basically trying to accomplish what you've already done, so all the advice you've given me is very appreciated. I just purchased the Secret Sauce book and I'm going to read through it as best I can. Thanks again for the advice and I'd love to keep in touch!

  7. 2

    Hi Sergey,

    Great inteview! I wholeheartedly agree with your approach to finding out where your potential customers gather before even building a product. In the past I have found forums with a "Buy/Sell" section to be a goldmine. They usually charge just $10-$20 a month and your audience is right there. Also, the longer your ad runs on the forum, the more testimonials can be posted on your ad thread.

    I have used Paypal for billing for several businesses, and it allows subscriptions right out of the box. You don't have to write the recurring part yourself at all. Every month Paypal will send you a message (via their API) if the billing was successful or not. They will also send an API message if the subscriber cancels.

    Its all pretty easy and well documented. From the sound of the other stuff you have coded for your business I'd say you could have it up and running in a day (and most likely less).

    1. 1

      I'm glad you liked the interview! I know PayPal has something they call subscriptions, and I've used web hosting companies that invoiced with WHMCS (super shitty software!) and insisted that I set up a paypal subscription to pay them monthly.

      Basically what would happen is the host emails me an invoice on Monday, I setup a recurring payment through their WHMCS on Tuesday.. then a month later, I get the next invoice on Monday. I can't remember if I had setup the subscription yet, so I'd pay it manually, then PayPal would happily pay it again on Tuesday. This is unbelievably bad UI!

      If I ever upgrade my plan with the web host, this mess gets even worse. Let's say I was being billed $20/mo when I set up the recurring billing through WHMCS on their website. Then I later upgrade to their $30/mo plan. Next month, they'll invoice me for $30 and PayPal will still auto-pay $20. If I don't catch on that this happened, I might get disabled for non-payment! If I do catch it, I have to login to PayPal, cancel the subscription, go to the web host's WHMCS, and create a new subscription.

      Now contrast that horrible mess to the Stripe way of doing things: I enter my card number at signup, and never think about billing again until I'm ready to cancel.

  8. 1

    Very insightful content. To be honest it greatly motivated us to creating http://7d2d.net and https://plesfore.com.

  9. 1

    After reading up your interview back in 2020 during lockdown I got inspired. I decided to copy up your product but didn't focus on a niche game decided to focus on a bunch of games, xgamingserver.com. I was not a gamer couldn't decide which one would do. After a few weeks of reading up on game servers and how they worked. I found myself purchased a survival game called 7 Days to Die. I'm no gamer so I played it a few times. It was actually interesting. By this time I had found an open-source project pterodactyl.io that enables people to set up containerized game servers. This was when I knew I would be able to create a business easily from it. Although having a computer science degree and a noob programmer I don't think I could have pulled off creating something custom like arkserver.io . So I bought the domain xgamingserver.com and a month into I was already up and running with the project. Now three months down the line I'm almost giving up. With only less than 20 customers, but I still have the potential to grow. The biggest challenge I'd say would be driving traffic to the website not even building a product. Even though I might end up giving up on this was the best experience I have had so far. I have learned a lot about starting a business and I got to teach myself lots of technologies. It was worth all the while.

  10. 1

    Your site is down and inaccessible currently, i sent emails to support hours ago with no response and the site arkservers.io is still down with the following error message

    Fatal error: Uncaught Exception: TMP_DIR (/home/ark-live/arkservers/tmp) is not accessible! in /home/ark-live/arkservers/libs/include.php:125 Stack trace: #0 /home/ark-live/arkservers/libs/include.php(24): init_writeable_dir('TMP_DIR', '/home/ark-live/...') #1 /home/ark-live/arkservers/public/index.php(5): require_once('/home/ark-live/...') #2 {main} thrown in /home/ark-live/arkservers/libs/include.php on line 125

  11. 1

    Curious about the security of your application, you're using a brooce as a daemon to ssh into other machines/user accounts to perform the actions? Otherwise anyone who gets access to your php application could theoretically own all your boxes through the redis interface with brooce?

    1. 1

      You're right that the security of the controller is a top priority. I don't want to go too deeply into specific things we do to mitigate the risk, but I can speak about it generally. Arbitrary code execution vulnerabilities in PHP apps are quite unusual. SQL injection is much more common, and can be leveraged to get a shell on the machine. Fortunately, I have every reason to think that we are not vulnerable to that.

  12. 1

    I know how to get racks full of servers at below-market rates

    I would love to hear more details about this. Brooce is super cool, BTW!

  13. 1

    Great article, I'm also a nearly-30 LAMP developer that wants to make some sort of hosting or aaS product, so this was an informative read.

    One thing though: don't add PayPal. It's a scorn to the web, and the more sites that replace it with Stripe, the better. I'm European (for the next year and a half, at least...) and if a sites only payment processor is PayPal, I usually look for an alternative.

    1. 1

      The fact that I'm banned for life from paypal is another reason why I don't offer it. It's amazing how they'll randomly do that to people. =)

  14. 1

    Nice journey Sergey, I have also been using queues to build large reports with a saas. So I would be interested how are you using Go you built, as the worker or the queue server? I opted for RabbitMQ to scale the queuing and have been happy with the Laravel queue workers so far. I similarly chose RabbitMQ with AMQP so I could build node or other workers in the future if the job need fit better. Wish you well in the future, as would be interesting to hear what the half life of hosting a game is 3/5/10 years when you have to evolve.

    1. 1

      Hi @tristanbailey,

      It just so happens that I run a RabbitMQ as a service company. If you ever need cloud hosted RabbitMQ services or know anyone who needs such,
      do not hesitate to check us out/send them our way: https://www.amqphosting.com

    2. 1

      I linked to the brooce project in my interview, you can check it out and see how it works. I documented it quite well on github, I think!

      I never liked RabbitMQ -- to me, redis is a much simpler and more flexible backend. Brooce is built on top of it, and can do things like list pending, failed, and completed jobs. They don't just vanish like AMQP jobs do.

  15. 1

    Really awesome write up, thanks for submitting.

  16. 1

    If you are making $20K / month, did you consider hiring a developer to accelerate your development progress?

    It may be expensive but a remote one may be affordable. But I think building a system to manage a biz is the ultimate way of automation. And it can decentralize yourself from operations.

    1. 1

      Unfortunately, hiring a developer doesn't necessarily accelerate your development process. In my other startups, I've had plenty of experience ending up with mediocre developers; usually I'll lose more in the time spent explaining things to them, than I'll gain in their output.

      A great developer is always welcome, but those are very hard to find. My $20K/month (which is revenue, not profit) is already less than such a developer could make at Google or Facebook.

      1. 1

        Thanks for your reply.

        In my region (Hong Kong), US$20K / m can build a small team already. A good developer may be just US$3K - 5K / m. I know that great developers are expensive in the US. My google developer friend is having around $250K - $300K / y.

        Anyway, what I mean is if you are the only developer, you will probably be the bottleneck of the product. A decentralized approach will always have a greater ROI in the long run, though it takes efforts at the beginning.

        I really like your way to find a pre-existing market. When I tried to find a market, do validation, it's always not gonna work due to various reasons.

        I have a question. In your previous projects, how did you judge that the project is do-able, a.k.a. there is a market demand?

        One can do a landing page, collect subscription emails, make a MVP, marketing research on keywords, etc. But what's your can-do signal?

        1. 1

          The landing page and email collection wouldn't have worked in my case. No one would leave me their email and wait a few weeks to come back and get their game server -- they'd just go to a competitor who's already up and running.

          To me, researching promotion channels is the only research that matters. When I discovered that "ark server hosting" was something people were searching for and that I could both buy ads for that term cheaply, and eventually rank highly for it

  17. 1

    You mentioned that you know how to get below market rate servers. Where's a good place to get servers for cheap? Or, how do I find such a place?

    1. 1

      Search on this page for the question by amoss, I wrote some thoughts on that there! =)

  18. 1

    That is awesome. Any chance you can create some community-funded TagPro servers?

    1. 1

      I didn't realize you guys needed more servers! I'm seeing quite a few with lots of empty slots. Almost seems like you need fewer so all the players can be bunched up more! =)

      1. 1

        The community wants a non-newb server and an eggball server

        1. 1

          I see! To be honest, I'm trying to focus mostly on Steam games for now! I might branch out later, though!

          1. 1

            cool!

  19. 1

    Just curious, do you do your own hosting, or do you use a 3rd party such as Amazon or Azure?

    1. 2

      Each Ark server needs about 4-6GB of RAM to operate. On Amazon EC2, I'd be paying something like $70/mo in hosting charges for each customer I got. Since I only charge them $14/mo, that's a non-starter.

      I don't own any hardware, but I rent dedicated servers because the pricing is about 1/20 of EC2.

      1. 2

        This.
        I'm operating in a different niche (enterprise search in the cloud, https://getctx.io ) and I have similar pricing constraints.

        One excellent hosting provider (I'm not using them currently, but I highly recommend them) is Hetzner.de - you're looking at €46/mo for 32GB RAM, 1TB of SSD and an i7, for instance.

      2. 2

        Thanks for the info!

        I noticed the dedicated server pricing on AWS is expensive. I'm guessing you're using a different provider?

        Do you have multiple customers running on one dedicated server?

        1. 1

          I actually just answered this elsewhere on the comments! Search for the comment by amoss.

  20. 1

    This comment was deleted 5 months ago.

  21. 1

    This comment was deleted 6 months ago.