Twitter Audience Platform

(TL;DR: Don’t check this box. See the update at the end to understand why.)

Twitter just opened up the “Twitter Audience Platform” option for the kinds of campaigns we use to sell books. The idea is that your promoted tweet will not only run in Twitter, but it will also run in other mobile apps. Typically, these would be free ad-supported apps like games that make you sit through an ad now and then.

Always the adventurous one, I decided to go ahead and check the box to allow this. It then asked some questions that I didn’t really have good answers for, but here is what I put:

Twitter Audience Platform opt-in

The reason they ask those questions is probably because some apps don’t want to include ads for competing websites or something. Beats me. That’s the only change to the campaign from what I told you to use in my how-to.

The campaign just started, but I already have a pretty stunning result:

Twitter Audience Platform CTR

Early results looking at only Twitter Audience Platform

My bid was $0.08. I haven’t had many impressions yet, but holy cow! Look at that click through rate! For reference, here is the same data when you only look at inside-Twitter impressions:

Inside Twitter CTR

Early results looking at only inside-Twitter


I don’t know what the deal is with the US campaign right now. But over time, I’m sure those will both settle in at 1% CTR like all my other campaigns.

Not only is the CTR I’m getting in non-Twitter apps staggeringly high (about 10x what I usually see in Twitter), but because of that, the cost per click is low. That’s because Twitter gives your ads a discount if they have exceptional CTR. I don’t know why they do that, but I’ve read it in multiple places, and it seems to be the case here. They are only charging me $0.05 instead of $0.08 per click.

Another possibility is that nobody has opted in to the Twitter Audience Platform yet, so I’m bidding against a far smaller pool of advertisers. (With this CTR, I doubt that very much.)

I don’t have any conversions to actual sales, since I just started this campaign and I’m being a cheap bastard and not bidding the $0.10 I need to bid to get a good flow of impressions yet. But damn. This Twitter Audience Platform thing is amazing.

As always, I’ll update when I have more data…

Update: Click Fraud Maybe?

After a week, the click-through-rate on the Twitter Audience Platform impressions continue to be sky-high, however my conversion rate is terrible. Since nothing has changed on my Amazon pages, and I’m at the lowest possible price (which we have independently established gives the highest conversion rate), I have to conclude that when people click on the Twitter Ads in other apps, they never go on to make a purchase.

Why? The most obvious answer is click fraud. When you add an ad platform to your app, you get a percentage (60% in Twitter’s case) of the revenue those ads generate. The more revenue the ads produce, the more you make. This creates an environment perfect for click fraud. Click fraud is pretty easy: you just contract with a bunch of people in a very poor country to download your app and do nothing but click the ads.

It’s very hard for the ad platform to detect it, and in the world of mobile apps, even if you get caught, you can easily just create a new identity, publish your apps there, and sign back up.

I have no hard evidence that this is happening, of course. But I do know that the CTR for the Twitter audience platform is 7-15 times higher than I see on Twitter, and the conversion rate is crap. So regardless of the reason, this is a terrible deal for advertisers.

Bottom line: DO NOT CHECK THE TWITTER AUDIENCE PLATFORM BOX when you set up your ad.

BookBub CPM Advertising? I doubt it.

Yesterday I, and every other author I know, got invited by BookBub to apply to be in the beta test of their new CPM advertising service. If you aren’t familiar with BookBub, it’s a relatively new player (about four years old) to the book advertising business. In a very short period of time, they built up a rather astounding mailing list and reputation. Their reputation is:

  • Exceptional performance. Books advertised in their emails often see thousands of purchases.
  • Ridiculous prices. Depending on your genre and what kind of a sale you are running, a single ad could be over $1000, and all ads are at least a couple hundred dollars.
  • Highly selective. They take only a quarter of the ads for free books and a fifth of ads for books that are merely on sale. The exact chances depend on your Amazon reviews, the genre, and how deep a discount you are running.

I haven’t yet tried them. As you know, I will never give away my novels for free. However, I will run a $0.99 sale now and then. It’s a risk/reward issue. If an advertising experiment like Amazon Giveaways fails, I’m out a few bucks. If a BookBub experiment failed, I could easily be out several hundred (romance is one of the more competitive genres, so the prices are very high).

I have read dozens of blog posts by people who have run BookBub ads. Unfortunately, these are all authors, so almost none of them turned the numbers into a meaningful metric. A click-based ad campaign should be able to report:

  • Impressions. How many people saw the ad
  • CTR (Click-through rate). What % of people who saw the ad, clicked it
  • Conversion. What % of people who clicked the ad bought the book

I don’t care what happened to your “bestseller ranking” because that doesn’t matter. It’s odd that nobody reports any of these numbers. Gross sales are nice to know, but that’s not enough information for anyone else to compare to. If your conversion rate sucks, but the impressions and CTR were great, then you won’t get good sales but it’s not BookBub’s fault. If your conversion rate is awesome, but you didn’t get many sales, then the service is overpriced. Without these numbers, I have no idea whether BookBub would be a good value or not for me.

Eventually I suppose I’ll have to cough up the money and find out for myself.

But anyway, that’s not the point of this blog post. BookBub is introducing CPM (Cost-per-mille) advertising. That means you bid a price to pay for 1000 ad impressions. A computer looks through all the bids that match a given email viewer, and they choose the highest bid. They charge you the price of the second-highest one, which makes you feel good, but with any large pool of bidders it doesn’t actually make any difference because every auction will end with a tie.

Most advertising platforms have moved to a CPC (Cost-per-click) model. In theory the two are basically the same, since for any ad you can pretty quickly measure the CTR and then  do a little math to find an equivalent CPM, and then run the CPM auction I just described. For example, the CTR of my Twitter ads is about 1%. So when I bid $0.10 per click, Twitter actually treats that as a $1 CPM (1000 impressions x 0.01 CTR x $0.10 bid). This is better for the advertiser for a couple reasons:

  • CTR is highly dependent on audience targeting, and it’s impossible to predict in advance. So a low-performing ad won’t lose you a lot of money, it’ll just win fewer auctions.
  • The service can play fast and loose with the definition of “impression.” If the service counts impressions where nobody actually saw the ad, it will drive down the CTR for everyone equally. So it doesn’t really matter.

In contrast, if you are offering CPM service, an impression had better be an actual impression. Otherwise your advertisers are going to revolt. And this is the first concern I have about BookBub’s service.

They say that they are going to count someone opening the email as an impression. If the ad was a banner up top, then that’s fair. But it’s not. They are going to put the ads clear down at the bottom of the email. When was the last time you scrolled to the very bottom of a newsletter? I certainly don’t. If they were running CPC auctions, this slight-of-hand would not matter. But when you are selling impressions, you can’t do that. Given how few people are going to scroll all the way to the bottom of a newsletter, I suspect the CTRs of these BookBub ads are going to really, really suck. Instead of 1% like I get on Twitter, it’ll probably be more like 0.01-0.1%. (Update: turns out the answer is 0.4%, so not as bad as I predicted, but still terrible.)

An obvious question about running any kind of auction-based advertising in a newsletter is the time-travel question. How do they know what ad to put in the newsletter before they know if it will be opened? In this case, I think I get what BookBub is planning, and it’s genius. The email will contain an image link and a click link for the ad. When the email client asks for that image, the BookBub servers will run the auction at that moment and serve up the winning ad. That way, they don’t have know in advance which emails will be opened. It’s exactly how banner advertising or google ad words works on web sites.

However, there’s a really hard technical problem here: gmail. You might not be aware of this, but Google doesn’t actually show you the email you were sent. When gmail gets an inbound message, it goes through and replaces every image “src” attribute with a URL that goes to Google. When you view the email and your client (gmail app or web browser) asks for that image, Google’s servers request it from the source and then save it in a cache. This has been a nightmare for email marketers. It’s absolutely impossible for you to know if someone viewed an email more than once, because the second view will go to Google’s caches 100% of the time. That’s not a bad thing in this case, because it just means that the auction will only run once per person, instead of once per open.

The nastier issue is that Google ignores certain things about the URL when it does the caches. So if you aren’t very clever in how you serve up your ads, every gmail user is going to see the same ad. BookBub has been in the email marketing business for a while, and so I would hope that they are all over this particular issue. But it’s definitely something as an advertiser I’d want to know how they are addressing.

My other concern has to do with BookBub’s reputation and advertiser base. The vast majority of people advertising on BookBub have no idea what the fuck they are doing. And this concerns me because I’m afraid they are going to bid crazy high. There is such perceived value in being on BookBub that people will throw money at these auctions even if they don’t work at all. This isn’t BookBub’s fault, of course.

If you compare this to Twitter, Facebook, Amazon, or Google advertising, you can imagine that marketing-illiterate authors are going to make up a tiny portion of the advertising base. So the fact that they don’t know how to bid properly isn’t going go mess it up for everyone else. But imagine running an auction for a chocolate bar in a room full of kindergarteners. You’d have kids bidding 10-100 times what the chocolate bar actually cost. That’s what I’m afraid BookBub’s CPM auctions are going to be like.

Anyway, I applied for the beta just like everyone else. So on the very unlikely chance that they let me participate, I’ll report back.

Update: I got into the program and ran an ad.

Attempting Amazon Ads

As you know, I’ve cracked the code on Twitter Ads. I have developed a method that gets me a reliable stream of people who will buy my book. I don’t make any money because advertising costs about the same as my royalty, but the hope is that these readers will go on to buy my second book. Never one to rest on my laurels, I decided to give Amazon Ads a go. Amazon Ads are something that you can do if you opt in to KDP Select, which I happened to have done. It’s very easy to launch a campaign from your KDP dashboard.

Amazon Ads work exactly like Twitter Ads, in that you make a bid per click, and then some portion of those people who click will buy your book. However, that’s where the similarity ends. The first thing I ran into was the editorial review of the ads. Twitter has an editorial review process for ads, too. But theirs is simply based on word blacklists. Amazon is much more invasive.

Rejection #1: Including a review

As you may recall my “money maker” tweet that I use in Twitter Ads is this:

So I tried just using that as the text of my ad. That ran afoul of the censors:

Unfortunately, we are unable to approve your ad as it contains references to reviews or star ratings in custom text.

You aren’t allowed to include star emojis or reviews in ad copy. I conveniently broke two rules at once!

Rejection #2: My cover

This one is funny, and I’m not entirely sure they did it on purpose. (Update: yeah, they did.) Amazon ad censors have a reputation of rejecting ads for books based on their covers. A bare male chest, a gun, a bullet hole, a knife, a red splotch that evokes blood—those are just a few of the examples I found of covers that had been rejected. My ad was rejected:

Unfortunately, we are unable to approve your ad as your book cover violates one of our ad guideline policies.

In case you’ve forgotten, this is my cover:


Clearly this is not a violence issue. In addition to the violence stuff everyone else runs in to, the guidelines ban:

Provocative imagery such as blatantly sexual prurient poses or poses that may be suggestive of sexual behavior, including partial nudity, excessive cleavage, or models in lingerie, underwear, or swimwear

You notice that nowhere in there do they specify “human” sexuality. So my working theory was that they objected to the depiction of floral sex organs. I prepared this alternate version of my cover…

A child-safe version of my cover.

A child-safe version of my cover.

I also contacted KDP support because those guys are the one of the best support outfits I’ve ever encountered. If anyone could get to the bottom of the censor’s thinking, I figured they could.

However, before they got back to me, a friend suggested that while the rejection said the issue was the cover, perhaps it was actually still the ad copy that was the problem.

Cerebral and erotic, Entropy is unlike any romance novel you’ve ever read.

My friend thought that “erotic” was possibly a blacklisted word, and either they checked the wrong rejection box, or with the context of the word “erotic” the flower became too salacious.


So sticking with the cover I had (I was just joking about the black boxes), I changed the ad copy to:

Entropy is a provocative journey unlike any romance novel you’ve ever read.

I figured “provocative” was enough of a euphemism for sexy that I’d get it past the censors. And it was! Almost…

Unfortunately, your ad campaign has not been approved to run on Kindle E-readers for the following reason(s):
Your book contains content that is too erotic or provocative in nature.

I didn’t say it was too provocative! But apparently someone there took it upon themselves to read my book and draw their own conclusions. Oddly, their purchase hasn’t shown up in my royalty report.

Anyway, that’s fine. I don’t really care whether the ad appears on e-readers. So here’s the approved ad:

Approved Amazon Ad

My First Amazon Ad Campaign

For my first campaign, I set my bid to $0.10 per click. They recommended $0.30 as a minimum bid, so it’s possible that I won’t get any impressions. Unfortunately, the data feed is horribly slow and I don’t get any feedback on how the campaign is going for 24 hours. So I’ll leave it at a dime for now to see what happens.

I started by targeting people who are interested in contemporary romance. Unlike Twitter, I have a high degree of confidence that Amazon actually knows what people’s interests are.

I also could have targeted people who bought certain books. But that’s a hell of a lot more work. So I figured I’d start with broad interest targeting to see what conversion rate I get.

I’ll update when I have some numbers to report!

Update: Rejected Again!

The campaign ran for a couple of days. In that time, I learned:

  • $0.10 and $0.20 bids are too low to get any impressions in the contemporary romance category
  • Amazon only updates the dashboard once a day, in my case around noon EDT

So I bumped my bid up to $0.30. The conversion rate would have to be insanely great for that bid to be viable. But I guess I’ll never know, because an hour later, this happened:

Rejected Again

You read that right. They really are rejecting a picture of two fucking flowers for being too overtly sexual.

I opened a support ticket with my buddies at KDP. I included that line, pointed out that my cover is two fucking flowers, not two flowers fucking, and asked them if they could find out what the guys at AMS are smoking because I want some. (Okay, I didn’t say it exactly that way. Okay, I kind of did, actually.)

So now we wait.

Update 2: I heard back from KDP Support

They said that it was rejected for two reasons: the provocative cover image, and the fact that there is erotic content in the book (they quoted a couple of the reviews).

So there you go. Amazon refuses to run ads for novels targeted at adults.

It’s no great loss, because it appears I wouldn’t get any impressions unless I bid at least $0.30 per click. And there is no way my conversion rate would be high enough to break even at that bid. (It would have to be about 15%, or three times the conversion rate I see on Twitter. No way that’s going to happen.)

So I’m scratching Amazon Ads off as a marketing channel, and turning my Twitter Ads back on now.


Attractions - Joshua Edward SmithI wrote a short story. I didn’t mean to, really. But it suddenly appeared in my head, and if I didn’t write it down I would have had to listen to it like a song on loop forever. So I wrote it down, and then I read it, and I really liked it. So I decided to turn it into a tiny little book. It’s just 12 pages, but there’s a category on Kindle called “15 Minute Reads” (actually, as it turns out, they classified mine as a “30 Minute Reads” because 15 minutes only goes up to 11 pages).

The whole 15 Minute Reads thing is a bit of a mystery. There are best-selling 5-page books that cost $10. It makes no sense. My best guess is that those books get all their reads for free on Kindle Unlimited, so it doesn’t matter what price they claim. And maybe having a super high price makes the KU borrow seem like more of a “deal,” and encourages sales. I have no idea. But I decided to just price my book as low as Amazon would let me.

So if you go to, you can pick up my short story for about a buck. And if you time it well, you can pick it up for free because I plan on using those five free days Amazon lets me have per quarter. The first one is going on right now. So if you managed to read this post on Friday, May 20, 2016 when I posted it, you should jump over to that link and grab the free book.

At the end of the short story, I put in the first scene of Entropy. The hope is that someone reads Attractions, likes it, and decides to try the first scene of Entropy. And then they have to buy the whole novel, because what happens next? This is particularly aimed at KU readers, because I suspect they are the people who will mostly read short books like this. And grabbing the novel won’t cost them anything, so the price barrier doesn’t exist.

It’ll be next to impossible for me to test this theory. But I will suspend my Twitter Ads for Entropy while I run these Attractions free days, and I’ll see if there are any signs of people buying.

I decided to go with KDP Select for this. It is required in order to be eligible for KU, and I really wanted that. The down side is that I can’t make it simply free. There are a series of painful contortions you can go through to make a book free on Amazon, but you aren’t allowed to do those if you are Select. I’ll see whether the KU thing works, and if it doesn’t, maybe I’ll opt out in 90 days when they let me and try the “perma-free” thing.

Anyway, I encourage you to go read my short story, because I think it’s really good. And the reviews have been over-the-top great.

Adventures in Pricing

When last we met, I had figured out how to use Twitter Ads to provide a steady stream of visitors to my book’s page on Amazon. To summarize the math: If I spend $10 and bid $0.10 per click, I’ll get 100 visitors to my page. If 5% of those people buy my book, that’s 5 sales. I make about $2 per sale in royalties, so that’s $10. So if I spend $10, I earn $10. Why do that? Because some portion of those people will go on to buy the sequel to my book, and those royalties won’t cost me anything to acquire. Also, I can actually bid $0.08 per click and still get impressions, so I do a tiny bit better than break even.

Now that I have a click engine that reliably delivers eyeballs to my page, the obvious next question was what price my book should be. Of course, that’s a question every author has, but I’m in a unique position where I can actually find out the answer.

If I raise my price, we would expect my conversion rate to go down. That is, fewer people will be willing to pay $3.99 than were willing to pay $2.99. But I’ll make more royalty at the higher price. So we can define an optimization metric: ( royalty x conversion rate ). The value at which that number is largest is the best price for my book. So what I’ve been doing for the past couple weeks is testing different prices in the US/Canada and UK markets, to figure out what’s optimal.

Higher prices = fewer sales

Higher prices = fewer sales

If you look at the circles, that’s the conversion rate at different prices. I’ve normalized everything to dollars (excluding any taxes). UK prices are a little lower, because when I made them tidy numbers with the VAT included, it just worked out that way. The green circles are the US conversion rate, and the blue circles are the UK conversion rate. Within the experimental noise, I’d say the circles are all lined up.

So that confirms the first hypothesis, which is that higher prices yield fewer sales. That’s common sense, but it’s good to test these things to be sure.

The crosses show the royalty I earned multiplied by the conversion rate. Our optimization metric. Now this is a little complicated, because there are Kindle Unlimited read-throughs mixed with outright book sales. And while I can change the book price, I don’t have any control over the page rate KU borrows pay. So what I actually did to get this metric is take the total royalties I earned (book sales plus KU), divided by the number of clicks that I bought with the Twitter Ads. (If KU wasn’t in there, that would give exactly the same number as the royalty on a single book times the conversion rate. If you don’t believe me, ask in the comments and I can do a mathematical proof. I double dog dare you.)

I should set my price to the place where the cross is the highest. And clearly, that is the lowest price. What this tells us is that the increase in royalties does not compensate for the loss of buyers at a higher price. Note that Amazon has been trying to tell authors this forever. They say very clearly on the KDP setup page that the biggest earnings will come if you set your price to $2.99. My experiment shows that their average for all books perfectly matches my experience with one book.

This raises an obvious question: should my sequel also be $2.99? Right now it’s $4.99. The customer acquisition process is completely different for the sequel. The only people who buy it are going to be people who read the first book and want to know what’s next. My gut says that these people are less price sensitive. On the other hand, now that I’ve fixed my first book price at $2.99, I’ve set a price expectation. A 66% increase in price on a book that, for all intents and purposes, looks exactly the same (same page count, similar cover, same author, same characters!)… yeah, that’s not right. So I’m going to loose some portion of those people, who probably would have paid $2.99 but will not pay $4.99.

I could run an experiment, but that’s a much tougher one to run, because the volume of people is so much smaller. It would take months to get numbers I could trust. Deep down, I know the answer. The sequel should be $2.99 also. It’s only a question of how long it takes me to bite the bullet and change it.

Twitter Ad Campaign: Step 5

This is part of a series of posts about how to run a successful Twitter Ad campaign to promote your book. Start here.

Step 5: Run a continuous campaign

You can just add more money to those existing campaigns and they will start up again. My approach is to feed each campaign segment in $10 increments, and continuously monitor the clicks and conversions. I track it in a spreadsheet so I can keep track of my conversion rate in real-time, although I’ve found that conversion is fairly constant in each market.

There is some evidence that Twitter will stop giving impressions to tweets that are old. So what I’m doing right now is taking my money maker tweet, and copying it exactly into a new tweet every two weeks. Then I swap that into the campaign. I’m really not sure if this is necessary, but it’s simple enough to do.

Tune your bid

You can tune your bid constantly. At low bids like $0.10 or less, you will see that your impressions tend to come in bursts. One day I had 500 impressions in the US market all day, and then I suddenly got 10,000 in the hour starting at 10pm. It really doesn’t matter. Whenever you get impressions, you’ll get your clicks, and then you’ll convert some of those leads to customers. If you bid higher, you’ll spend more and speed up the process. If you bid lower, you’ll save a little money and slow things down.

You need to set a cap, though. At $2.99, your royalty is about $2. Your bid should not ever be higher than $2 times your conversion rate. If your conversion rate is 5%, you should not bid higher than 0.05 x 2 = $0.10. You can bid lower if you want. Your campaign will go slower, but you’ll do better than break-even. You should not bid higher. That’s called paying people to read your book, and it’s a rookie mistake.

Also, feel free to add more accounts to the list if you find one that you think has good prospects following it. Don’t forget to add them to every campaign geography segment.

Test price elasticity

Run your ad campaign for at least two weeks before going to this step. You want to make sure that you’ve tuned your bid and have a consistent flow of clicks going to your page. Pause your existing campaigns, and copy them.

Increase your price. My first experiment was to go from $2.99 to $3.99. That’s ongoing, so I don’t have results to report yet. At the same time, I tuned the UK and Canada prices so they were prices ending in “99” as well. (At some point, I hope to test whether I get better conversion at “99” prices or at prices ending in something weird like “73.” I read a study once that said home prices that were weird numbers held better in negotiation.)

You can leave everything identical (you’ll have to select the tweet again). Launch the copy. The reason for doing the copy is that it’ll be easier to count clicks. We expect that our conversion rate will go down at a higher price, which is bad. But we make a lot more money per book, so it might be good. There’s only one way to know: test it.

Suppose you have 5% conversion at $2.99 ($2.04 royalty). With a fixed number of clicks, that’ll earn you the same money as a 3.6% conversion at $3.99 ($2.72 royalty). So after changing your price, you want to know if your conversion drops more or less than that “equivalent” level. If it doesn’t drop as much, you can keep your bid where it is and you’ll make money. If it drops more, you have established that $3.99 is above your optimal price, and you should test something lower.

Let it run for a week. I’ll update when I’ve got my data and we can compare notes.

Update: I finished the tests.

Twitter Ad Campaign: Step 4

This is part of a series of posts about how to run a successful Twitter Ad campaign to promote your book. Start here.

Step 4: Run a real campaign

Now that we have our target accounts set, and we have a tweet that does well, we are ready to run a real campaign. You can copy the test campaign as a starting point, so you don’t have to put in all those accounts again.

Segment your markets

Change the locations to just US and Canada. Scroll down to the bottom and set your budget to $10/day and $10/total again, and pick your winning tweet to promote. Note that Twitter suggests you promote three, but it’s fine to just do one. And it eliminates a variable, which is helpful. Launch that campaign.

Now copy that campaign, and change the locations to just the UK. You’ll need to set the tweet again. Launch that.

If you are doing any other countries, make separate campaigns for them.

This is called “segmenting your markets” and there are two reasons to do it. First, the ad markets vary a lot by country. So in some countries you will be able to get impressions with a lower bid than will yield impressions in other countries. You only get to set one bid per campaign, so this alone is a good reason to keep them separate. Second, buying behavior varies by country. My conversion rate is better in the UK than it is in the US/Canada market. I have no idea why that is. But it is, which means my break-even bid is different for that market.

Track results

Twitter will report clicks in pretty-much real-time. Don’t look at any of the other numbers because they are irrelevant and will confuse you. Plus they are mostly wrong. All you care about in the Twitter Ads interface is clicks.

Over in your KDP dashboard, you can see sales. Since you segmented by market, you can look at the sales in each market separately. Note that if you use the “Generate Report” button down at the bottom, it’s a lot easier to add up the numbers. Be sure to use the second sheet in that spreadsheet (“Orders Report”). That is the count of people who clicked “buy.” The Royalty report has some time lags in it, which can be confusing.

Be careful to only look at the report for the book you are promoting!

It is okay to tinker with your bid now and then. Raise it a little if you are not getting impressions in that market. Lower it if you are getting a lot of them. Ideally, a $10 campaign should last a few days, so you get a good cross section of data.

Compute your conversion rate

  1. Number of copies sold: _____
  2. Number of clicks: _____
  3. 100 times line 1 divided by line 2: ____%

Your conversion rate will vary a lot at the beginning, but you’ll find it stabilizes to some number. In the US/Canada market, my conversion rate at $2.99 is 4.5%. In the UK at a similar price, it’s 6.5%. If yours is higher than mine, that means your blurb and/or reviews and/or targeting are better than mine. And if yours is lower, it means they aren’t as good, and you should tinker with them to see if you can make them better.

We are going to use this conversion rate to compute our maximum bid going forward, which takes us to Step 5.

Twitter Ad Campaign: Step 3

This is part of a series of posts about how to run a successful Twitter Ad campaign to promote your book. Start here.

Step 3: Run a test campaign

We are finally ready to run a campaign. Almost. A Twitter Ad is actually a Promoted Tweet. You tweet like normal, but then you tell Twitter Ads to promote that tweet, so it shows up over and over in the feeds of people who do not follow you. So before we can run our campaign, we need to write some tweets.

Write five tweets

Go to your character or book account that you made back in Step 1. Compose some tweets that you think might lead someone to click. Do not include a picture. Having a picture in there will reduce the number of people who click your link (despite what you may have read). No hashtags either. Some text and that link you made back in Step 2.

The formula that worked best for me is five stars (type star emoji if  you know how to do that, or just copy & paste them from this tweet). Followed by a sentence from a 5-star review. I found that sentences that make your book sound interesting/different work better than ones that say it is good. The five stars kind of already said it’s good. So you can use a sentence that captures attention.

Also, avoid anything sexy or suggestive. Twitter will prevent you from promoting any tweet which is remotely spicy.

Write five different tweets. We will use them all in this campaign, and see which one performs best. Then we will use that winner going forward.

Figure out your targeting

Now make a list of accounts to target. Your tweets will be shown to the people who follow these accounts. Find authors who write books similar to yours. Find the publishers who sell those authors’ books. Dig deep. Try to come up with 30-40 accounts (I’m using 40 in my campaigns). Obviously, bigger is better. And they don’t need to be authors you like. One of my biggest producers is followers of E. L. James (the 50 Shades lady).

If you can’t come up with that many, Twitter is going to suggest “similar” accounts when you start to enter these, so that might help.

It’s really important that you not target people who are unlikely to want to read your book. A big part of achieving conversion is talking to the right audience. But it’s also really important that you target a big group. Because if you don’t target very many people, you will not be able to get your ad seen at the price you can afford. Coming up with this list of accounts is the single most important thing you will do.

Spend $10

Okay, we are finally ready to create a campaign! Make sure your browser is logged in to your character or book account. It probably is already, since you just wrote those five tweets. Go to and give them your credit card number.

Create a campaign: “Website clicks or conversions”

Name it “Test” and set it to “Run continuously”

Update: DO NOT check the box for Twitter Audience Platform. See this post to understand why.

Set the locations to: United States, Canada, UK. These are the only places I’ve found Twitter Ads actually work. You can get impressions and clicks other places, but those people never actually buy the book. If you think your book appeals to other places, go ahead and include them.

Gender: Any gender (Twitter has no idea what gender people are)

If you are sticking with US, CA, UK, then there is no need to set language. But if you are trying India or Brazil because you think they might work for you, go ahead and choose “English.”

Add followers, and put in the accounts you listed. After you enter each one, Twitter will suggest some. Write those down. They might be good additions to your list.

Do not do any demographic targeting. None. Here’s the problem: Twitter has no idea what demographics anyone is in. It doesn’t know gender or interests or any of that. If you touch any of the demographic controls, you will ruin all that careful targeting of accounts you just did. Don’t do it!

I only put tweets in people’s timelines, because I find those other places annoying. But follow your gut on which of those to check.

Set a daily maximum and a total budget of $10.

Set your bid to $0.09. Yes, Twitter is going to yell at you and say it should be 16 times that big. Twitter lies. $0.09 will get you plenty of impressions.

Select the 5 tweets that you made earlier.

Launch your campaign.

Sell nothing

You won’t get any impressions or clicks for a little while. Don’t worry about that. Eventually you’ll start to get both. You might not sell anything during this test. But that’s okay. Our objective here is only to find the best tweet to use going forward.

You will be lured by the analytics interface to look at demographics and which accounts worked best and other random things. Don’t fall for it. Twitter has no idea about any of that. Those numbers are all junk. All you care about right now is which tweet to use, and all you’ll care about at the end is how many books you sold.

At $0.09 per click, your $10 campaign will generate 111 clicks. If you want, you can lower your bid and you will get more clicks, but it will take longer. If you don’t get any clicks after a day, you probably aren’t targeting enough users. If you get a lot of clicks in the first few hours, you should lower your bid to slow things down. You can adjust the accounts you target and your bid and anything else you want while this test is running.

Pick your winner

By the end of the test, you’ll see that each of your tweets has a “Click Rate” associated with it. One of them will have the best click rate, and that’s the winner. Having a tweet that draws clicks well is a good way to ensure you get the maximum exposure, fastest, for the lowest cost. It’s complicated math to explain why, but trust me that a tweet with a better click rate is better for you economically.

For reference, the click rate of my star tweet is about 0.6%. That means one in 167 people who sees it, clicks it. Since I’ve never clicked a Twitter Ad in my life, I think that’s actually pretty impressive.

Congratulate your winning tweet, and join me at Step 4.

Twitter Ad Campaign: Step 2

This is part of a series of posts about how to run a successful Twitter Ad campaign to promote your book. Start here.

Step 2: Get your book ready

I know, you are itching to get your campaign going. But remember that while a campaign will get you leads, it is up to your book page on Amazon to convert those leads to customers. That process is called “conversion” and the percentage of leads you manage to turn into customers is called your “conversion rate.” For reference, my conversion rate is about 6% at my $2.99 price point. That means 1 out of 16 people who click my Twitter Ad go on to buy my book. I have no idea how good that is. I can’t find any data to compare it to. But you can compare your performance to mine, anyway.

Fix the back matter

Remember that the objective here is not to make money on these sales. We are running a break-even campaign. We plan to spend as much on advertising as we earn on royalties. The reason this is not insane is that you have more than one book. (If you only have one book, go here.) You need the people who read this book to go on and buy your next book. That’s where the profit happens.

The best way to get a repeat customer is to have stuff at the end of your first book that promotes your next book. In this biz, they call this “back matter.” It’s the stuff in the back, after your story ends. Some people think putting the first chapter of the next book back there is good. I didn’t like that idea for my first novel, so I just put in a link to the next book. (I also put in a plea to write a review on Amazon, GoodReads, and LibraryThing.) If you haven’t done something like this, go add it to your book and update the version available for download.

Fix the blurb

When someone lands on your book’s page at Amazon, they are going to read the blurb. A great blurb is probably your best hope of achieving conversion. Get outside opinions on your blurb from people who understand marketing. Chances are very good that your blurb is too long. I say this because almost every blurb I see is too long. You want to give a feel for what the book is, but not get too detailed. If your book is fiction, take a look at this formula. It is how I wrote my blurb. You want to leave no question at all in the prospect’s mind what your book is. Lingering question = no sale.

Fix the price

Set your price to $2.99. A lower price will lead to lower royalties per book, but more books. Amazon says that $2.99 (the lowest price at which they pay 70% royalties) is the price at which royalty times sales volume will be maximized. It might be that your book will produce more profit at a higher price, but you cannot possibly know that yet. We will find the best price in Step 5. But for now, you should set it to $2.99 to maximize your conversion rate.

If you think that there is a value argument that says you should have a higher price, you are delusional. Price and value have absolutely nothing to do with each other in the book business. You should set your price to the point that produces the highest royalties for you. I’ll show you how to do that in Step 5.

While you are in the KDP dashboard, seriously consider opting in to KDP Select. That will make your book available to Kindle Unlimited (KU) users. If you aren’t familiar with KU, it’s basically Netflix for books. You get paid about a half a penny per page read, which works out to the same royalty you’d get selling an 80,000 word book at the $2.99 price. KU reads account for about 15% of my sales from ad campaigns, and over the long term have accounted for about 11% of my royalties across Kindle & Print editions. Are the other stores you are in giving you 10-15% of your sales? If not, enroll in KDP Select.

Fix the reviews

People coming to your page are going to look at your cover, your blurb, and your reviews. If you don’t have very many reviews, you really need to fix that. Badger everyone you know who has read your book to write one. It really doesn’t matter what they say. But a book with only a handful of reviews looks riskier to your prospect than one that has a lot of reviews. What’s a lot? I’m not sure. 5 is not enough. 50 is more than enough. But obviously, the more the better.

Also, you really need to have 4 stars or better. If you don’t, it’s unlikely that you are going to achieve conversion. If your book was dragged down by a few mean idiots, then getting more reviews from more people will get your stars up. If your book really is just a 3-star book, then I’d recommend abandoning marketing and promotion, and shift your focus to your writing.

Set up a link

Amazon has a whole bunch of different stores. And the link to your book is a link to a particular store. If you send someone in the UK to, they won’t be able to buy. And it won’t be at all clear to them why not. It’s horrible. But there’s a solution.

Go to and follow the instructions to make a link. You can give it a nice short name. From now on, use that as your only book link. That site magically directs anyone coming in on your link to your book in the right store.

You should make one of these links for each of your books, and this should be the link you use in the back matter of your first book.

This is the link we will use in the tweets that we are going to write in Step 3.

Twitter Ad Campaign: Step 1

This is part of a series of posts about how to run a successful Twitter Ad campaign to promote your book. Start here.

Step 1: Create book or character accounts on Twitter

If you are a regular here, you may recall that I tried an experiment with character accounts on Twitter. The idea was that I might drum up interest in my book by giving my main two characters their own accounts, and letting them banter back and forth in character. It didn’t work. But it turned out that having character accounts is useful for another reason.

There are two kinds of author accounts on Twitter. There is the kind where most tweets are just entertaining or personal or whatever, with the occasional bit of news or promotion of the person’s books. And then there is the nothing-but-promotion account with lots of links to Facebook posts and retweets of other author’s promotions and quotes from the book and hashtags and on and on and on. That second kind sucks. Don’t be that person.

If you create an account for your book or for a character from your book, you can put all that crap on the character account. That frees up your personal account to be personal. You’ll still mention your book, but not exclusively. You’ll be an approachable author who readers can have a relationship with. Those relationships will turn into book sales. Personally, I have sold well over 100 books through my personal relationships with people on Twitter. And a key to that has been to not drive them away through constant promotion. I tweet screen captures of my reviews. I retweet when people post pictures of my book, or when they say nice things about it. And that’s it for promotion. And I try to avoid having too much of that without funny, or personal, or whatever tweets in between.

Making a character account is really easy. You need to set up a gmail address because every Twitter account needs a unique email. If you already have a gmail account, there’s a trick you can use. Suppose your email is You can use to set up the new account (you can put anything you want between + and @). Twitter thinks that’s a different account, but gmail doesn’t. Use cover art. Put a link to your book or author page in the bio. Pin a tweet that explains what the account is, and maybe refer to your main account there, in case people want to follow the real you.

This is the account you are going to use to run your campaigns. You will get a handful of followers from your campaigns and some people are going to like and retweet your ads (seriously; people do that). You will follow those people. And you can follow a lot of your friends from your main Twitter account. Follow everyone (except porn bots) back. Don’t be picky. You are never going to look at the tweets of the people you follow anyway. This is a write-only account.

You will get questions from people as @-replies to your ads (yup; people do that, too). You’ll answer those of course.

If you are going to run Amazon giveaways, this is also a good place to tweet about those. I post my promo quotes on my character accounts, too.

Once you have the account set up, it’s time to turn our attention to your book. That’s Step 2.