00:00:00
[Music]
00:00:02
I hate marketing but um I need to grow
00:00:04
my business so I built these Twitter
00:00:07
Bots 9 days ago and uh it already has
00:00:09
700 followers and it grew the revenue by
00:00:13
uh 56 56% so in this video we're going
00:00:18
to talk about how I find this marketing
00:00:20
tools idea so I can grow my business
00:00:22
without having to ever do marketing I'm
00:00:24
also going to show you how that Twitter
00:00:26
bot thing work how I built it the text T
00:00:28
and all the good stuff we're going to
00:00:29
talk about the launch strategy and how I
00:00:31
got the word out and finally we're going
00:00:33
to talk about how that little thing is
00:00:35
related to a real software business and
00:00:36
how much revenue it has generated hey
00:00:39
shut the
00:00:47
up I built a software called Indie
00:00:52
page it's a link in BIO tool for anyone
00:00:55
who wants to Showcase their portfolio
00:00:57
and it's mostly targeting entrepreneurs
00:01:00
or anyone who is trying to make money on
00:01:01
the internet users can connect their
00:01:03
stripe account so that they can showcase
00:01:05
their revenue and um this for instance
00:01:07
is my Indie page those are the startups
00:01:10
I built and the revenue is verified with
00:01:12
stripe there are over 10,000 people
00:01:15
registered on the app and uh the revenue
00:01:17
has been doing well it's been making
00:01:19
anywhere from $1,000 to $4,000 per month
00:01:22
and um I believe they'll be much more
00:01:23
solo entrepreneur so I want to grow that
00:01:25
piece of software but I have a problem I
00:01:28
hate marketing it feels like work so um
00:01:31
I'm trying to find ways to do marketing
00:01:33
without doing marketing it's basically
00:01:35
building a tiny tool or a tiny feature
00:01:37
that promotes your main application
00:01:38
since I launched this leaderboard a
00:01:41
couple months ago it's basically a web
00:01:43
page that ranks entrepreneurs based on
00:01:45
their revenue and he's been doing pretty
00:01:47
well this is the spike of Revenue when I
00:01:49
launched the leaderboard so um I'm just
00:01:51
trying to reproduce the strategy and
00:01:52
launch more free tools and I'm
00:01:54
constantly looking for some small
00:01:55
features that I can launch and
00:01:57
potentially would go viral and I
00:01:58
remember when I started the jour joury I
00:02:00
was motivated by seeing other
00:02:01
entrepreneurs making money and sharing
00:02:03
it on Twitter and this is how I got this
00:02:05
idea of creating a bot that's going to
00:02:07
share entrepreneur revenue on Twitter in
00:02:09
real time all right first let me show
00:02:12
you how the product works so this is the
00:02:14
Indie page Revenue bot and uh I think I
00:02:17
just got reminded that I need to verify
00:02:19
the page but Twitter makes it pretty
00:02:20
tricky because I have to purchase a new
00:02:22
phone number there are three actions
00:02:24
that the Twitter bot is doing first it's
00:02:27
going to tweet every time someone
00:02:28
receives a payment it's also going to
00:02:30
tag the maker of that startups and add a
00:02:33
link to the startup the goal with this
00:02:35
tweet is to give a little extra exposure
00:02:37
to the project by adding a link to their
00:02:39
website and hopefully the maker of the
00:02:41
project could retweet that which would
00:02:43
also give a little extra exposure for
00:02:45
Indie page every Monday the revenue bot
00:02:48
is going to Tweet the weekly leaderboard
00:02:50
it's going to take all the payments data
00:02:52
from last Monday to Sunday and he's
00:02:54
going to aggregate all that and make a
00:02:56
beautiful Le board just like this of
00:02:59
course he's going to do the exact same
00:03:00
thing at the end of the month and I
00:03:02
cuted a little feature so that it pins
00:03:04
that tweets at the top of the page and
00:03:06
the goal here is again to give a little
00:03:08
bit of extra exposure to some projects
00:03:10
as well as gamifying the experience of
00:03:12
working hard and trying to make money on
00:03:14
the internet and uh just for the record
00:03:16
I added this web page which has a
00:03:19
history of all the tweets that have been
00:03:20
made by the bot let's talk about the
00:03:22
elephant in the room the text
00:03:25
tack that's it that's all I'm using
00:03:27
right joke aside here it is I'm using
00:03:30
nextjs API or route whatever this is
00:03:33
they call it I have three one for the
00:03:35
daily tweets one for the weekly
00:03:37
leaderboard and one for the monthly
00:03:39
leaderboard and to trigger those API end
00:03:41
points I'm using versal Chrome jobs
00:03:43
feature which is super handy and super
00:03:46
easy to use and since I am shipping fast
00:03:48
I am not using typescript and I am using
00:03:51
mongodb for the database I have a
00:03:53
cluster that stores all the payments
00:03:55
from stripe as well as the twiets and
00:03:57
since there's a little bit of user
00:03:58
interface for the content like the
00:04:00
little board this is what I use Tailwind
00:04:03
CSS and Daisy UI this is a simple UI
00:04:06
component library that I use for all my
00:04:08
project and I love it I never design any
00:04:11
mockups or inigma I jump straight into
00:04:13
the code and I keep iterating until it
00:04:16
looks right should we talk about the
00:04:18
code since the twitterbot needs to have
00:04:21
access to some payments and strap
00:04:22
accounts I added the code directly
00:04:25
inside of the Indie page code the first
00:04:27
thing I did was to create an account on
00:04:29
EX developers and uh since I already had
00:04:31
another account and Twitter will force
00:04:34
you to pay $100 a month if you can
00:04:36
create a second project then I recreated
00:04:38
a new account and that's when things got
00:04:41
complicated because your Twitter
00:04:42
developer account is linked to your
00:04:44
Twitter account and Twitter will not let
00:04:47
you switch between developers accounts
00:04:49
so I had to log out of my current
00:04:51
Twitter account login to my Indie page
00:04:54
accounts so that I can finally log to my
00:04:56
Indie page Twitter developer account
00:04:58
once I get once finally got my developer
00:05:01
account set up I created a new project
00:05:03
and I just went to keys and token and
00:05:05
copy pasted all those uh secret and and
00:05:08
bear tokens and and everything inside of
00:05:10
the code so first I've created a library
00:05:12
of helper functions for uh interacting
00:05:14
with the Twitter API so I have my
00:05:16
Twitter clients and I have a few
00:05:18
function that will convert uh a big
00:05:21
tweet into a thread for instance and
00:05:23
then there are the three API endpoints
00:05:25
so the first one is the daily tweets
00:05:27
which is uh simply going to first check
00:05:30
if the request is made by my uh Chrome
00:05:33
job I only allow Verso to trigger the
00:05:35
Chrome job so this is where my app is
00:05:37
hosted and versal makes it super easy I
00:05:40
just added this code inside of the
00:05:42
versal DJs file it's going to trigger
00:05:45
those three API end points the daily
00:05:47
tweet every 3 hours the monthly theboard
00:05:50
once a month and the weekly theboard
00:05:52
once a week that's all I had to do to
00:05:54
make this recurring all right now back
00:05:55
to the Daily tweets so after this little
00:05:57
checkup here it's going to start start
00:05:59
executing the function first is going to
00:06:02
find the most recent tweet the bot has
00:06:04
been sharing he's going to find the user
00:06:06
ID of the person who've been featured so
00:06:08
that it does not retweet again the same
00:06:11
person over and over because there are
00:06:13
some guys who are making $1,000 a month
00:06:15
and there are some guys who are making
00:06:16
$100,000 a month and I want to make it
00:06:19
fair for everyone so it's tweeting a
00:06:20
little bit about everyone that's why
00:06:22
here I'm fetching the most recent
00:06:24
payment in stripe and I'm excluding the
00:06:27
recent users who've been featured and
00:06:29
and then he going to find information
00:06:30
about that user the the name of the
00:06:32
startup the name of the user the
00:06:34
username and is going to create this
00:06:36
line of text that will be the content of
00:06:38
the Tweet to post to the Twitter API
00:06:41
it's very simple with the client I just
00:06:42
need to do Twitter client. v2. tweet
00:06:44
with the text and if the Tweet went well
00:06:47
I'm going to store that in the database
00:06:48
so I'm not going to retweet that same
00:06:50
person over and over and that's pretty
00:06:52
much it for the daily tweet all right
00:06:54
and now for the monthly and the weekly
00:06:56
leaderboard those are two separate
00:06:57
functions but the code is very similar
00:06:59
it does the same uh background check to
00:07:02
make sure that it's actually my server
00:07:03
who's making the request then it's going
00:07:05
to do this big aggregate function where
00:07:07
it's going to fetch all the startups in
00:07:09
the database who have strip verified
00:07:10
payments it's going to calculate their
00:07:12
revenue and is going to rank them based
00:07:14
on who made the most money and uh I
00:07:16
cannot really share what's inside of
00:07:18
this big function because there's some
00:07:19
like again some guys behind this camera
00:07:21
who are trying to wreck my app and I
00:07:23
don't want to make their life easier and
00:07:25
then for each of the top 50 startups is
00:07:28
going to create one line of text with
00:07:30
the name of the person the name of the
00:07:31
startups and how much revenue they made
00:07:33
in the past couple days and since there
00:07:36
are over 50 lines of text and Twitter
00:07:38
only allow 280 characters per tweet I'm
00:07:41
using this line of code to split this
00:07:43
big chunk of text into a thread and just
00:07:46
like before I'm using this function to
00:07:48
post on Twitter save the Tweets in the
00:07:50
database and if it's the monthly
00:07:52
leaderboard I'm pinning it to the Indie
00:07:54
page Revenue bot Twitter
00:07:57
page let's talk about marketing and
00:08:00
revenue but first I I have to start with
00:08:02
this part I am lucky to have created an
00:08:05
audience of over 100,000 people on
00:08:07
Twitter so everything is a little easier
00:08:09
for me and I am also a lazy person so
00:08:12
all I did to promote this Twitter bot
00:08:14
was to tweet one time and um it was
00:08:16
enough to get around 300 followers on
00:08:18
the tweet and at the moment it's getting
00:08:20
around 10 to 20 extra followers per day
00:08:23
so here is what I would do if I had to
00:08:24
restart again with zero followers okay
00:08:27
number one I would verify the Twitter
00:08:29
page because it's about payments and
00:08:31
building trust it's important to have
00:08:32
the check mark badge and at the moment
00:08:35
Twitter is pushing the content of
00:08:36
verified accounts so it's also great to
00:08:38
get more exposure second I would try to
00:08:41
launch that bot everywhere hiker news
00:08:44
Indie hicker Reddit Twitter product hunt
00:08:47
I would give a shot for every single
00:08:48
platform until hopefully one goes viral
00:08:51
and I wrote tutorials about how to get
00:08:53
the most out of those platforms in my
00:08:55
blog if you want there must be a link
00:08:57
somewhere below and finally I would
00:08:59
partner with power users users of my
00:09:02
software are already making money online
00:09:04
but but who are not retired yet and I
00:09:07
would just have a normal conversation
00:09:08
with them show them the feature show
00:09:10
them what are the benefits ask them if
00:09:12
they have any feedback and hope that
00:09:13
they will spread the word out all right
00:09:16
and uh the final part will be about
00:09:17
Revenue I guess all right so that's that
00:09:19
is the the stripe account for this
00:09:21
business here this is the revenue for
00:09:24
this year in total there was a big spike
00:09:27
around May because this is when I
00:09:28
launched the the leaderboard this these
00:09:31
things that people loved all right now I
00:09:32
have zoomed in a little bit on the
00:09:34
revenue these are the last N9 days of
00:09:36
Revenue and this is the launch day and
00:09:39
the the overall revenue is up by at
00:09:42
least 50% and what I like to see here is
00:09:44
there are less zero days so it means
00:09:46
there is some ongoing flow some ongoing
00:09:49
traffic new people discovering the app
00:09:51
every day and I believe it's because
00:09:53
well now Indie page is disable on
00:09:56
Twitter and since it's tagging the
00:09:58
makers of the startup that just made
00:10:00
money it somehow brings a little bit of
00:10:03
awareness so more people get to discover
00:10:04
Indie page and it's slowly increasing
00:10:06
the revenue but when this video comes
00:10:08
out you can check my Indie page uh you
00:10:10
will see my real time revenue for Indie
00:10:12
page and see whether there was a spike
00:10:14
or it was a total flop but I have
00:10:15
noticed something never ship never know
00:10:18
all right I hope you just ship it
00:10:21
[Music]
00:10:22
[Applause]