As mentioned in our previous article, Naver Search Ad comprises 72% of paid search traffic followed by Google Ads at 16% in Korea. Given this market share, businesses targeting the Korean market through paid search must often run ads on both platforms.
And when businesses advertise on both platforms, they must also track ad performance on both platforms.
Naver Search Ad and Google Ads provide APIs, which help digital marketers automate performance tracking across the platforms. But even without the APIs, digital marketers can download the data on the online interface to check their performance of the ads.
However, as the reports are retrieved from two different platforms, to efficiently blend the data and analyze performance from a top-level view, data pre-processing is a must for tracking how your ads are doing on the top 2 search engines in Korea.
This article explains how to blend data from Naver Search Ad API and Google Ads API using a short snippet of Python code and one of its most famous data manipulation and analysis libraries: Pandas.
1. Blending Naver Search Ad API and Google Ads API data: Know your data
Firstly, you need to see what the data from both platforms actually looks like. As you can see in the campaign performance reports from Naver Search Ad API and Google Ads API, the data is defined differently—yet most of the metrics are the same. Let’s look at the actual data of the four most basic metrics in the PPC world.
Metrics and description from Naver Search Ad API
Metrics | Description |
ccnt | Conversion count |
clkCnt | Click count |
impCnt | Impression count |
salesAmt | Cost summation (VAT included) |
Metrics and description from Google Ads API
Metrics | Description |
Conversions | Number of conversions |
Clicks | Number of clicks |
Impressions | Count of how often your ad has appeared |
Cost | Sum of your cost-per-click (CPC) costs |
Daily campaign performance data from Naver Search Ad API
print(df_naver) |
Daily campaign performance data from Google Ads API
print(df_google) |
2. Blending Naver Search Ad API and Google Ads API data: Rename the metrics
Now you’re aware that the two datasets have different metrics names. The best solution on this is renaming the columns into identical names. Assuming you’re a Python user, using Pandas, this job can be done easily. In Pandas, the rename function supports changing the column names by receiving dictionary data type as its parameter. As metrics names from Google Ads seem more common and general, let’s rename metrics names from Naver Search Ad API.
Renaming Columns
import pandas as pd df_naver = df_naver.rename(columns = {'ccnt':'Conversions', 'clkCnt':'Clicks', 'impCnt':'Impressions', 'salesAmt':'Cost'}) print(df_naver) |
3. Blending Naver Search Ad API and Google Ads API Data: Combine the two datasets
After you rename the columns to ensure the two datasets share common names, you’re ready to combine the two!
Before you do that, don’t forget to specify where the data comes from by adding a new ‘Platform’ column in both datasets.
Also, if you use a different currency in the two accounts due to various reasons like billing or other administrative issues, make sure the two datasets have the same currency by calculating a ‘Cost’ column based on your currency type preference to prevent any data misinterpretation.
Adding a ‘Platform’ Column
df_naver['Platform'] = 'Naver' df_google['Platform'] = 'Google' |
Getting USD to KRW Currency Rate using forex-python Library
from forex_python.converter import CurrencyRates import datetime date_obj = datetime.datetime.today() c = CurrencyRates() print(c.get_rate('KRW', 'USD', date_obj)) 0.0008791991 |
Converting KRW of Naver Search Ad API to USD
df_naver['Cost'] = df_naver['Cost'].apply(lambda x: x * c.get_rate('KRW', 'USD', date_obj)) df_naver['Currency'] = 'USD' |
In this way, even after you combine the two datasets, you still can check the performance of each platform. Now, by using the concat function from Pandas, you can blend the two datasets.
Concatenating the Datasets
df_combined = pd.concat([df_naver, df_google], ignore_index=True, sort=True) print(df_combined) |
Use-Cases of the Cross-Platform Dataset
Once you have the combined data, it’s easier for you to compare each platform’s performance. You can quickly build plots with Seaborn and Matplotlib to do a quick check on the metrics.
import seaborn as sns naver_color_code = '#3EAF0E' google_color_code = '#4285F4' g = sns.catplot(x='Date', y='Impressions', hue='Platform', data=df_combined, height=7, kind='bar', palette=[naver_color_code, google_color_code]) g.despine(left=True) g.set_xticklabels(rotation=30, fontsize=12, ha='center') g.set_yticklabels(rotation=0, fontsize=12) |
For a more detailed analysis, you can import the blended data into your preferred interactive data visualization tool and add the ‘Platform’ category, such as in checkbox form, to compare the metrics of each platform side-by-side.
4. Blending Naver Search Ad API and Google Ads API Data: Useful links
Pandas documentation page
- Provides tutorials, links to source code, a detailed user guide, and a list of parameters of each function
Seaborn example gallery
- Provides use-cases by presenting actual plots with images and codes enabling users to easily create similar graphics