With over 2 million apps in the app store, Apple Search Ads represent an exciting new way for marketers to drive traffic to their app in an environment of stiff organic competition.
Let’s take a look at Apple Search Ads and how they can help you achieve your performance marketing goals.
Diving Into Apple Search Ads: Features, Tips & Best Practices
Apple Search Ads Campaign Creation
The apple search ads platform has three levels: campaign, ad groups, and keywords. Keywords are grouped into ad groups, which are a subset of campaigns.
Campaign Level
Here’s a look at the campaign creation screen in Apple Search Ads:
As you can see, the search ads platform is no exception to Apple’s preference for minimalistic interfaces. Before you can choose any options, you must first specify the app your campaign will be advertising.
Since ads are automatically generated by Apple based on your app store description and metadata, the ad copy and creative will be set at the campaign level once you input your app: ads will not differ across ad groups and keywords, meaning you won’t be able to take advantage of creative or copy optimization.
Once you’ve input your app (we used the Google Search app for the sake of example), more fields will appear, starting with campaign budget (discussed below) and the option to set campaign-level negative keywords:
Once you have created a campaign there is no way to delete it from the account. There are only two possible campaign states: active or paused.
Also note that if you want to add or remove keywords from your campaign keywords list, you must navigate to the ad group level and hit the keyword tab (you can’t do it in campaign settings for some reason).
Finally, notice that since there’s no shared library across campaigns for an account, you will have to include your master negative keyword lists either at the campaign level or in each individual ad group you create.
Ad Group Level
Next, you will be taken to ad group creation as you scroll down, which includes a preview of your ad in the sidebar:
Here is where you name your ad group, choose devices (iPhone, iPad, or both), set ad scheduling (you can include or exclude times of day for each day of the week), and your default bids for the ad group (which can be adjusted by keyword at the keyword level).
Notice that Search Match targeting method is enabled by default. If you want your campaign to only target specific keywords of your choosing, be sure to disable this option.
As previously mentioned, your ad will be auto-generated based on the metadata from your app’s description. You can see a preview of what your ad will look like on the right-hand side of the ad group creation screen.
You can also click “View all examples” to see all possible variants of your ad as it will appear in the app store search results page:
You can preview your ad by device on both the iPhone and the iPad (they do look a little different). You can choose which devices you want to target in the ad group settings.
Keyword Level
The next section of the campaign creation screen includes a keyword input field. Although you can upload a .csv file with keywords after the campaign has already been created, you have the option to input a list of your keywords (both standard and negative) here:
You can enter keywords in this section to find related keywords with relative search volumes, and Apple will populate the list with suggested keywords based on your app if you leave this field blank.
Sadly, Apple provides only minimal data on keywords. When you type a keyword into the UI, you will see only see the relative search volume, no hard numbers.
Targeting
The final section of the campaign creation screen allows you to choose targeting options.
Within this section, you can choose which customer types to target. Options include:
- All users
- Users who have not downloaded the app
- Users who have downloaded the app
- And lastly, users who have downloaded your other apps.
The demographic targeting allows you to layer in a target gender or age range. Targeting locations allows you to target specific cities or states.
Account Structure
Our approach to account structure is to bucket keywords into campaigns by theme, which allows us to set budgets for themes according to how they perform. Then we’re able to organize performance data so we can get a big picture look at how groups of keywords are performing by bucket.
For example, in one campaign we might include keywords related to a client’s brand, while another campaign might contain competitor keywords, and we can easily see how brand keywords perform relative to competitors.
It makes sense to further separate out campaigns by match type and device. For example, you might have a brand campaign with exact match keywords and a brand campaign with the same keywords set to broad match. That means you can set different budgets for exact match campaigns, broad match campaigns, iPhone campaigns and iPad campaigns with the same keywords, according to how they each perform.
When the same keywords are used for more than one campaign match type, make sure to include the exact match keywords in the negative keyword list for the broad match campaign. Setting up the proper exclusions will prevent your campaigns from competing against each other and will ensure each search query triggers the appropriate keyword.
Lastly, we recommend making full use of the “search match” feature by creating a separate campaign with no keywords. Search match will automatically generate keywords it thinks is relevant for that campaign. Again, make sure to add keywords from all other campaigns as exact negatives to prevent intra-account competition.
Having a separate search match campaign can be very useful from a keyword expansion standpoint. You can use the search terms report from your search match campaign to find high performing keywords to add to your other campaigns or even break out into their own themes. Those reports can also help you identify irrelevant or underperforming keywords to add to your negative keyword lists.
Budget Capping
While budgeting is set at the campaign level, with Apple’s UI the “budget” you set applies to the campaign across its entire lifetime. If an account is left unattended without a sufficiently high budget, it will pause automatically whether you like it or not.
For example, suppose you initially set the lifetime budget at $1000 dollars with a $500 daily cap, which the campaign hits every day. Within two days that campaign will have exhausted its lifetime budget and it will stop serving ads. Unless you remember that you set the lifetime campaign budget so low, you might not know that it’s paused until you check the campaign again.
The easy solution here is to set budget extremely high during campaign creation so you’ll never run out. On the flip side, it might be a good thing that campaigns have a safety valve like this, so they won’t continue to spend indefinitely if they’re left unattended.
Bidding
There are two bidding options: max CPT and CPA goal. Max CPT is a second-price auction system, just like Google Ads. CPA goal bidding is a hybrid of conversion-focused bidding types like Googles’ Conversion Optimizer and Facebook’s oCPM and target CPA bidding. We recommend starting with manual CPT bidding to get a sense of what your CPTs and CPIs look like and then once you have accumulated enough install data, experiment with CPA goal bidding.
There is only one ad result on Apple Search Ads. Essentially, this means that only the top position ad is shown—if your ad doesn’t win the auction against all other competitors for that keyword, it will receive zero impressions.
The rarity of ad inventory could potentially lead to very high CPTs, if it weren’t for the fact that there is a relevance floor requirement for Apple Search Ads. Apple determines how relevant an app is to any given keyword, and below a certain relevance threshold an ad will not be shown no matter how high the bid.
This relevance floor has the effect of limiting the number of apps that can possibly compete for any given keyword, and should prevent CPTs from rising to prohibitive heights from overcompetition for the very limited ad inventory.
On the flip side, the fact that there’s only one ad position can make it very difficult to optimize bids. If, for example, you’re not bidding enough to be competitive for a given keyword, then your ad simply won’t be shown at all and you will receive no impressions for that keyword.
Apple Search Ads Reporting Features
Although it is possible to download performance data for all campaigns at custom time windows, there’s no way to segment those reports by day – which may be troublesome to marketers used to working with Google’s highly customizable reporting. At the account level dashboard, Apple also doesn’t display aggregate data, so you’ll have to manually add up the data to see how your account is performing overall.
That means that if you want to include daily performance reports, you’ll either have to enter each day of data one at a time, or you can download data segmented by day for each individual campaign by navigating to the adgroup level of a campaign and selecting the “Reports” tab.
Within the Reporting UI, you can segment campaign performance data by date, ad group, device, age, gender, or location.
To see performance broken down by keywords, or to view which search terms are triggering your ads (of especial importance with Search Match campaigns), navigate to the keyword level and select the appropriate tab. A major limitation of the Apple UI is that it will not show you search terms if they fall below a certain volume threshold – it simply adds up all your long-tail queries into “low volume terms” and bundles all their data in the same bucket.
Post-Install Reporting: Apple Search Ads Attribution API
While install reporting is nice, down-funnel reporting is critical for ROI optimization. Apple doesn’t have a seamless solution for post-install tracking like many other large ad networks, but it is possible with some extra legwork using the Apple Search Ads attribution API. This is vital for marketers who want to track the quality and value of installs generated by Apple Search Ads.
The attribution API will report when a user downloaded an app by tapping through an Apple Search Ad, and returns data on the date a user clicked an ad, the date they installed, and which campaign, ad group, and keyword was responsible for serving the ad they clicked. From there, any in-app actions taken by that user can be attributed back to the Apple Search Ads data to determine the ROI, LTV, ARPU, or any other metric you want to calculate.
Note that this post-install data must be called via API and cannot be seen in the Apple Search Ads reporting dashboard. This makes for a less than desirable experience but at least there’s a way to assess the performance metrics that really matter. Third-party attribution tools like AppsFlyer and Tune also have support for Apple Search Ads attribution, so you have options if you don’t want to build your own reporting system from scratch.
UI Functionality: Columns and Date Ranges
The minimalistic UI, as we noted above, comes at a cost in terms of options and customizations. Within Apple Search Ads, you can’t create custom columns for the reporting dashboard, and there are an extremely limited number of options for columns you can show or hide.
There are 12 total columns at the campaign level: Spend, Avg CPA, Avg CPT, Impressions, Taps, Conversions, TTR, CR, App Name, Budget, Daily Cap, and Campaign ID.
There are 14 columns at the ad group level: Search Match, Default CPT Bid, Spend, Avg CPA, Avg CPT, Impressions, Taps, Conversions, TTR, CR, Start Date, End Date, Ad Group ID, and CPA Goal.
And finally, there are only 10 possible columns at the keyword level: Match Type, Spend, Avg CPA, Avg CPT, Impressions, Taps, Conversions, TTR, CR, and Keyword ID.
Another thing to bear in mind as you navigate the UI is the date range. The options here are limited: you can choose between today, yesterday, last 7 days, last 30 days, last week, last 4 weeks, last 12 weeks and custom range. Notably missing are “all time” or “last month” windows (you’ll have to manually create them if you want to look at data from that time window).
Lastly, the time window does not remain the same as you navigate throughout the UI. For example, if you set the time to last 30 days at the account level and then click through to a campaign, it will reset back to the default time window (last 7 days).