- build something from scratch in January 2022
- tweet daily updates with hashtag #buildsell30
- acquire paying(!) customers
- list the app for sale on MicroAcquire’s marketplace
in other words: hack, hustle, and troll. three of my favorite things.
between Christmas and New Years (2021) i brainstormed ideas.
on one hand this question is easy to answer. people will pay for machines that move them safely between locations. people will pay to stay out of prison. we know what consumers want, we are the consumer.
yet with #BuildSell30’s limited time constraint, the real challenge was to figure out how to make something that is simultaneously obvious (in usefulness) and also scarce (in suitable alternatives).
i’ll call this the revenue <> complexity paradigm.
on the far right side are spaceships and AI. on the left are todo list apps and website “uptime” monitors. we know this intuitively. so how do we find those ideas in the middle?
i don’t think you can go looking for them. it starts with what we already know.
knowing something most people don’t is the entrepreneur’s unfair advantage. we want a packed bag full of these insights when it’s time to build a project. but nobody will give you space to develop advantages. so we should always be learning, absorbing, and taking note of inefficiencies and societal pain points.
here was my special knowledge going into the BuildSell30 hackathon:
- started buying NFTs in August 2021
- launched and sold out 3 of my own collections
- was a member of 20 Discord communities with various “chat bots”
- learned to build smart contracts in Solidity
- => noticed the power of social proof in selling digital art
with this information bouncing around in my brain, the idea presented itself to me: build a bot that turns NFT sales into Discord notifications.
looking back at our diagram this utility is simple (but useful), cheap (with expensive competitors), and just complicated enough to evade the “i’ll do it myself” crowd.
how did i know the complexity required to build this was sufficient to warrant a paid service? a few more bits of special knowledge:
- OpenSea requires you to apply for an API key; not all requests are approved
- i have 2 working API keys :)
- OpenSea doesn’t support webhooks, which requires your own server to poll data
and how did i know all this? because i wanted a sales bot for myself, long before the BuildSell30 hackathon.
building the MVP
the time-gated premise of hackathons is sacred. to prove i wasn’t getting a headstart, i decided to livestream my app build on January 1, 2022. it took 9 hours and was a lot of fun.
by the end of the stream i had 2-3 free signups, a working Stripe integration, and the product was live on nftsalesbot.xyz. i figured i would spend the next few weeks marketing, then try to sell the product between January 25-31.
then i got some bad news. Stripe denied my account.
iterating the product
when Stripe rejected me, i tried to fight back. they rejected me again. i don’t know why. i have ~15 revenue generating Stripe accounts, all in good standing. oh well.
entrepreneurs are tenacious, which is a fancy way to say we do whatever it takes. so on Day 3 i rebuilt all the payment features, replacing Stripe with what i should have done all along: crypto payments.
a day later i had another idea. there are a lot of use cases for sales alerts, from tweets to spreadsheets. why should i only support Discord? integration flexibility would make my app more useful, as well as insulate me from comparison shoppers.
(during the brainstorming phase, almost every competitor i found only offered a Discord or Twitter connection)
so i integrated with Zapier, aka 3,000 apps at once.
by January 4th my product was 10x more valuable, with just a few additional hours invested in coding. but now the real challenge began: how to make money?
i’m a believer in Free 99. this is the process of selling something by giving it away. here’s how it works.
- free builds goodwill
- free drives [free] traffic
- free creates buzz about your product
you already know this. but free does one more thing. free puts your product in front of people who don’t realize they’re seeing it because it’s free.
in other words, if 100 people click on your product after someone shares it (because it’s free), at least a few of those 100 people will assume they need to pay for the product. the premise of how your product caught their attention is nullified.
over the years i’ve relied on this phenomenon heavily. so to generate free goodwill, free traffic, and free buzz, i did a few simple things:
- posted on Product Hunt, HackerNews (fail), twitter
- shared in the #BuildSell30 community chat room
- renamed my YouTube live stream with better keywords
- linked from my project page
all of this is trivial. i spent no more than 10 minutes on each tactic. and i didn’t even bother with strategy… my Product Hunt post was at a horrible time of day (i’m in Korea). my copywriting was a mere stream of consciousness.
but it doesn’t matter, thanks to Free 99. and a byproduct of this free account giveeaway was receiving 3 high quality testimonials, which i immediately added to the home page.
it’s funny. acquiring testimonials from paying customers is a lot harder than asking free users. i think paying customers perceive this as unpaid labor, whereas free users feel the need to reciprocate.
after giving away dozens of accounts, i got my first paying customer.
scaling the app
when an app goes from 1 user to 100, things tend to break. a few improvements i made between January 5-15:
- background queue to handle expensive tasks like fetching sales and creating alerts
- multi-chain (ETH and Polygon), multi-wallet (Metamask + others) crypto payment support
- admin panel with user impersonation (for customer service)
- better mobile styling so users can manage their NFT sales bots on the go
around January 16 i decided the app was Good Enough. i’m not a real developer or designer or anything like that. just a dude who does whatever it takes.
my next and final step in the #BuildSell30 hackathon was to sell the app itself.
on January 17 i spent 15 minutes listing the app on MicroAcquire.com.
my listing was approved after midnight EST, so i figured i might receive a couple interested buyer requests the following day. fortuitously i was wrong.
within 15 minutes someone reached out, and within a few hours i had 9 hungry buyers. here are some of their messages:
you wanna know which one i responded to first? (to be fair this was also the first message i received)
within an ~hour, the deal was closed. we executed a contract together, i got paid via bank transfer, the buyer got the code / accounts / API keys, and i even provided a quick training session to explain how it all works.
according to Micro Acquire’s founder and CEO Andrew Gazdecki, i might have set a new record for their platform.
update, record confirmed.
by all accounts this was a successful hackathon execution. but that does not mean i did everything correctly.
to help hackers like me, here are a few things i could have done better:
- live streamed my 2nd (Zapier), 3rd (admin panel), 4th (crypto multi-wallet) feature builds. i had to do the work anyway, why not create more free marketing content?
- written a blog post like this one, or sent an email newsletter, announcing my launch on Product Hunt
- posted in more places like reddit, artist support communities, and FB groups
- set up a tool like TweetDeck to monitor keywords such as “nft sales bot”
- created Issues or Pull Requests on open source sales bot projects (example), plugging my app
this said, the silver lining of not doing these things was being able to pitch them as future growth opportunities to the new owner.
it would be a harder sell if i tried 50 tactics and got the same results. this mystery gap is useful in any valuation negotation, so overall i’m content with my 80/20 approach to marketing NFT Sales Bot.
i’d love to participate in more hackathons in 2022. i’m also down to simply code live stream like i used to, for 3 or 7 or 13 hours straight. i learn a lot by doing it, and it’s especially fun giving away the apps afterwards.
cheers to 2022.