Traffic arbitrage cases
Overview of affiliate programs" можно определить как a review and description of various affiliate programs that offer earning opportunities in internet marketing. Such overviews typically include details on the terms of participation in the program, the amount of commission payouts
Traffic arbitrage cases

Case: Top-notch KetoBalance weight loss program for $11,235 for 12 weeks.

TikTok Weight loss products Nutra
It is no secret that since 2022, the advertising platform TikTok has taken advertising optimization very seriously. Just like Google or Facebook, they have tightened the screws on nutra offers and other advertising with blackhat approaches.

In our team, the main focus has always been on nutra, which we promoted across various geos. The offer I'm going to talk about had already been successfully tested by us. In March of this year, I decided to resume the tests. Read on to find out what happened...

Full offer details:

Offer: Keto Balance - weight loss capsules
Payout: $35
Traffic source: TikTok
Geo: Spain
Expense: $3121
Revenue: $11235
Profit: $8114
ROI: 259.98%.
With Keitaro, you can see the full volume of leads, but unfortunately, we cannot track expenses there. For this purpose, our team has its own service. The second screenshot provides a visual representation of everything.

Approaches to Ad Campaigns

For ad campaigns, I used an agency business manager, where I also obtained the ad accounts. The ad accounts themselves do not require farming, aging, or anything else. The campaigns were run using various methods. During the testing of new creatives, I manually ran small volumes following this principle: one campaign with 10 ad sets, each containing 2 creatives. I had around 3-4 such campaigns per ad account, and I tested up to 10 ad accounts.

Yes, it's important to note that our team follows strict rules: the buyer requires a minimum of 60+ creatives per day. The visuals that performed well were duplicated 5-7 times and continuously uploaded. After the third round of testing, the selection was narrowed down to the top-performing ones, and I uploaded these creatives to other ad accounts using the table principle (a functionality within TikTok). I made multiple copies of the best-performing creatives and multiplied them across ad accounts following this scheme. Even though I constantly monitored the computer, I set up autopilot rules with the necessary conditions for extra security, which are also available within TikTok.
I apologize, but sharing screenshots of all the ad accounts here is unlikely to be possible because TikTok's scaling primarily relies on individual ad accounts, which have a tendency to get banned relatively quickly.

Settings within the campaign + targeting

Let's start with age. This is crucial! Initially, I targeted the age range of 25-55+ and received feedback from the M1 team regarding leads, indicating a significant deviation from the 25-28 age group. There were several reasons for this: some did not convert because it was too expensive, or they simply didn't have the money, etc. Another important reason for rejections was the lack of delivery to certain islands in Spain, resulting in many declines. We quickly resolved this issue by excluding those islands based on GEO. Fortunately, TikTok's settings allowed for such exclusions (although TikTok has limitations on what can be excluded).

After deciding to change the age targeting to 35+, the daily traffic experienced a decline within a couple of days. The main TikTok audience consists of people aged 25-35+. Three days later, we made the decision to revert back to the 25-35+ age range. The rejections were coming from the 25-28 age group, but on TikTok, the lower threshold after 25 is 35+. As a result, the entire audience from ages 28 to 35 was lost, which accounted for a significant portion. When we reverted to the age range of 25-35+, we noticeably increased the volume of valuable leads, although rejections still persisted. Nevertheless, it was worth it!

Internal configuration:

Event: Purchase Completion, Card Addition; Placement: TikTok; Gender: Male, Female; Age: 25-55+; Interests: No interests; Bid Strategy: Standard Bid; Optimization Goal: Conversion; Budget: Any; Automatic creative optimization +.

Ad configuration:

  • 2 creatives,
  • 1 icon (any),
  • 5 descriptions,
  • button option: dynamic or standard with two actions.

Approaches to creating creatives

During the testing period, I did not use proxies or cloaking. Although there is a campaign with cloaking visible in the Keitaro screenshot, it performed poorly and resulted in significant traffic cuts.

The main principle of creatives was to whiten the landing page and use creatives without "before and after" images. I also didn't place product overlays on the creatives.

If a creative stopped passing moderation after some time, there were two solutions:

  1. Run it through a unique link generator or render it again in a video editing program to obtain new video metadata.
  2. Apply frames, fog effects, rain effects, or lower the transparency if they are too prominent directly on the video in a video editor. This technique also helps when converting creatives to black and white.

Challenges faced throughout the period

  1. Handling a large number of creatives within a short timeframe.
  2. Choosing the right event to optimize for: "Complete payment" or "Add to cart." Both events work, but "completed payment" rotates traffic, consistently selecting the audience, while "add to cart" generates traffic quickly and requires lower campaign bids. However, it's crucial to closely monitor the performance. You need to have a sense for it; otherwise, there may be over-optimization, and you won't achieve satisfactory results.

Age targeting

As mentioned earlier, there were many rejections, so I had to compromise and target as is.

Various variables were tested within the TikTok account

This includes testing different buttons, running campaigns solely on TikTok or utilizing other platforms offered by the account (such as Pangle), choosing between standard bidding strategy or the lowest price, targeting options, and more.

The only difference with dynamic buttons is that you cannot export the campaign to a spreadsheet after running it. Similarly, you cannot upload a spreadsheet with a dynamic button campaign because the parameter is not available in the spreadsheet, resulting in an error. However, in terms of performance, the button choice doesn't matter much. They all work equally well. When choosing static buttons, I usually used "in-store/get quote" or "learn more." These buttons perform well.


We were pleasantly surprised by the team's work. The call center made 10 or more calls per lead per day. Although the testing period was relatively short, if the quality of the traffic declined, the team provided immediate feedback. And it wasn't just a few words, but a detailed breakdown for each lead. This helped us understand what was wrong and what needed to be improved.

Even with rejections (which were influenced by factors such as the target audience's age and delivery limitations), the approval rate was impressive. Considering the relatively low cost per lead, the ROI was very satisfying. The $35 payout per lead with a significant bump was excellent. Overall, it turned out to be a great success.