Skip to main content
Connectors

Mercado Ads connector

Set up the Mercado Ads connector in Kaivo: authentication, configuration, the 17 BigQuery tables it syncs, and answers to common questions.

Written By Lauri Raivio

Last updated 16 days ago

Kaivo is a fully managed data platform that syncs your Mercado Ads data into a Google BigQuery warehouse and keeps it up to date automatically. There is no pipeline to build and no infrastructure to run, so you can spend your time analysing your marketing and sales data instead of moving it.

What is the Mercado Ads connector

Sync your Mercado Ads data into BigQuery with Kaivo to track ad spend and performance across brand, display, and product campaigns.

CategoryMarketing & Sales
AuthenticationAPI key
SetupSelf-service

Getting started with the Mercado Ads connector

  1. Sign up for Kaivo and create a workspace.
  2. Connect your Mercado Ads account.
  3. Choose which tables to sync.
  4. Wait for the initial sync to finish.
  5. Query your data in BigQuery or your favourite AI or BI tool.

Authenticating Mercado Ads

Authenticate with your Mercado Ads credentials. You provide:

FieldDescription
Client ID
Client secret
Refresh token

Prerequisites

Mercado Ads requires you to register a Mercado Libre developer application and complete the OAuth flow once to obtain a refresh token:

  1. Create an application in the Mercado Libre developer portal and note the Client ID and Client Secret.
  2. Complete the OAuth authorization flow once to obtain a Refresh Token.

Then enter those values below.

Need help, or want an easier way to connect? Reach our team via the chat in the bottom-right corner.

Configuring the Mercado Ads connector

When you set up the connector, you provide:

FieldDescription
Start Date

Any data before this date will not be fetched.

Tables and columns synced from Mercado Ads

Kaivo syncs 17 tables from Mercado Ads into a dedicated dataset in your BigQuery warehouse. Click any table to see its columns and types.

ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account_nameSTRING
advertiser_idFLOAT64
advertiser_nameSTRING
site_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
advertiser_campaign_idSTRING
advertiser_idFLOAT64
budget__amountFLOAT64
budget__currencySTRING
campaign_idFLOAT64
campaign_typeSTRING
cpcFLOAT64
destination_idFLOAT64
end_dateSTRING
headlineSTRING
moderation_statusSTRING
nameSTRING
official_store_idFLOAT64
site_idSTRING
start_dateSTRING
statusSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: brand_campaigns__items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
campaign_idFLOAT64
item_idSTRING
statusSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: brand_campaigns__keywords

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
typeSTRING
campaign_idFLOAT64
cpcFLOAT64
is_negativeBOOL
match_typeSTRING
termSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
acosFLOAT64
advertiser_idFLOAT64
campaign_idFLOAT64
clicksFLOAT64
consumed_budgetFLOAT64
cpcFLOAT64
ctrFLOAT64
currencySTRING
cvrFLOAT64
dateSTRING
event_time__bookmark_conversionsFLOAT64
event_time__cart_conversionsFLOAT64
event_time__checkout_conversionsFLOAT64
event_time__eshop_conversionsFLOAT64
event_time__items_quantityFLOAT64
event_time__leads_im_conversionsFLOAT64
event_time__leads_question_conversionsFLOAT64
event_time__ppv_conversionsFLOAT64
event_time__units_amountFLOAT64
event_time__units_quantityFLOAT64
printsFLOAT64
site_idSTRING
touch_point__bookmark_conversionsFLOAT64
touch_point__cart_conversionsFLOAT64
touch_point__checkout_conversionsFLOAT64
touch_point__eshop_conversionsFLOAT64
touch_point__items_quantityFLOAT64
touch_point__leads_im_conversionsFLOAT64
touch_point__leads_question_conversionsFLOAT64
touch_point__ppv_conversionsFLOAT64
touch_point__units_amountFLOAT64
touch_point__units_quantityFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
advertiser_idFLOAT64
campaign_idFLOAT64
item_idSTRING
statusSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
typeSTRING
advertiser_idFLOAT64
campaign_idFLOAT64
cpcFLOAT64
is_negativeBOOL
match_typeSTRING
termSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
advertiser_idFLOAT64
campaign_idFLOAT64
dateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: brand_keywords_metrics__keywords

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
acosFLOAT64
clicksFLOAT64
consumed_budgetFLOAT64
cpcFLOAT64
ctrFLOAT64
currencySTRING
cvrFLOAT64
event_time__bookmark_conversionsFLOAT64
event_time__cart_conversionsFLOAT64
event_time__checkout_conversionsFLOAT64
event_time__eshop_conversionsFLOAT64
event_time__items_quantityFLOAT64
event_time__leads_im_conversionsFLOAT64
event_time__leads_question_conversionsFLOAT64
event_time__ppv_conversionsFLOAT64
event_time__units_amountFLOAT64
event_time__units_quantityFLOAT64
keywordSTRING
printsFLOAT64
site_idSTRING
touch_point__bookmark_conversionsFLOAT64
touch_point__cart_conversionsFLOAT64
touch_point__checkout_conversionsFLOAT64
touch_point__eshop_conversionsFLOAT64
touch_point__items_quantityFLOAT64
touch_point__leads_im_conversionsFLOAT64
touch_point__leads_question_conversionsFLOAT64
touch_point__ppv_conversionsFLOAT64
touch_point__units_amountFLOAT64
touch_point__units_quantityFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account_nameSTRING
advertiser_idFLOAT64
advertiser_nameSTRING
site_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
typeSTRING
advertiser_campaign_idSTRING
advertiser_idFLOAT64
campaign_idFLOAT64
end_dateSTRING
goalSTRING
nameSTRING
site_idSTRING
start_dateSTRING
statusSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
active_viewsFLOAT64
advertiser_idFLOAT64
average_frequencyFLOAT64
campaign_idFLOAT64
clicksFLOAT64
completed_viewsFLOAT64
consumed_budgetFLOAT64
cpcFLOAT64
cpmFLOAT64
ctrFLOAT64
currencySTRING
dateSTRING
event_time__attribution_add_to_cartFLOAT64
event_time__attribution_bookmarkFLOAT64
event_time__attribution_checkoutFLOAT64
event_time__attribution_leadsFLOAT64
event_time__attribution_ppvFLOAT64
event_time__cpa_orderFLOAT64
event_time__cpa_ppvFLOAT64
event_time__cplFLOAT64
event_time__direct_amountFLOAT64
event_time__direct_item_quantityFLOAT64
event_time__roasFLOAT64
event_time__units_quantityFLOAT64
printsFLOAT64
reachFLOAT64
site_idSTRING
touch_point__attribution_add_to_cartFLOAT64
touch_point__attribution_bookmarkFLOAT64
touch_point__attribution_checkoutFLOAT64
touch_point__attribution_leadsFLOAT64
touch_point__attribution_ppvFLOAT64
touch_point__cpa_orderFLOAT64
touch_point__cpa_ppvFLOAT64
touch_point__cplFLOAT64
touch_point__direct_amountFLOAT64
touch_point__direct_item_quantityFLOAT64
touch_point__roasFLOAT64
touch_point__units_quantityFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
advertiser_campaign_line_item_creative_idSTRING
advertiser_idFLOAT64
campaign_idFLOAT64
creative_idFLOAT64
line_item_idFLOAT64
nameSTRING
statusSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
typeSTRING
advertiser_campaign_line_item_idSTRING
advertiser_idFLOAT64
campaign_idFLOAT64
end_dateSTRING
line_item_idFLOAT64
nameSTRING
start_dateSTRING
statusSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
active_viewsFLOAT64
advertiser_idFLOAT64
average_frequencyFLOAT64
campaign_idFLOAT64
clicksFLOAT64
completed_viewsFLOAT64
consumed_budgetFLOAT64
cpcFLOAT64
cpmFLOAT64
ctrFLOAT64
currencySTRING
dateSTRING
event_time__attribution_add_to_cartFLOAT64
event_time__attribution_bookmarkFLOAT64
event_time__attribution_checkoutFLOAT64
event_time__attribution_leadsFLOAT64
event_time__attribution_ppvFLOAT64
event_time__cpa_orderFLOAT64
event_time__cpa_ppvFLOAT64
event_time__cplFLOAT64
event_time__direct_amountFLOAT64
event_time__direct_item_quantityFLOAT64
event_time__roasFLOAT64
event_time__units_quantityFLOAT64
line_item_idFLOAT64
printsFLOAT64
reachFLOAT64
site_idSTRING
touch_point__attribution_add_to_cartFLOAT64
touch_point__attribution_bookmarkFLOAT64
touch_point__attribution_checkoutFLOAT64
touch_point__attribution_leadsFLOAT64
touch_point__attribution_ppvFLOAT64
touch_point__cpa_orderFLOAT64
touch_point__cpa_ppvFLOAT64
touch_point__cplFLOAT64
touch_point__direct_amountFLOAT64
touch_point__direct_item_quantityFLOAT64
touch_point__roasFLOAT64
touch_point__units_quantityFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account_nameSTRING
advertiser_idFLOAT64
advertiser_nameSTRING
site_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
acos_targetFLOAT64
acos_top_search_targetFLOAT64
advertiser_campaign_idSTRING
advertiser_idFLOAT64
automatic_budgetBOOL
budgetFLOAT64
campaign_idFLOAT64
channelSTRING
date_createdSTRING
last_updatedSTRING
nameSTRING
salesforce_event_idFLOAT64
statusSTRING
strategySTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
acosFLOAT64
acos_benchmarkFLOAT64
advertiser_idFLOAT64
advertising_items_quantityFLOAT64
campaign_idFLOAT64
clicksFLOAT64
costFLOAT64
cpcFLOAT64
ctrFLOAT64
cvrFLOAT64
dateSTRING
direct_amountFLOAT64
direct_items_quantityFLOAT64
direct_units_quantityFLOAT64
impression_shareFLOAT64
indirect_amountFLOAT64
indirect_items_quantityFLOAT64
indirect_units_quantityFLOAT64
lost_impression_share_by_ad_rankFLOAT64
lost_impression_share_by_budgetFLOAT64
organic_items_quantityFLOAT64
organic_units_amountFLOAT64
organic_units_quantityFLOAT64
printsFLOAT64
roasFLOAT64
sovFLOAT64
top_impression_shareFLOAT64
total_amountFLOAT64
units_quantityFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
advertiser_campaign_item_idSTRING
advertiser_idFLOAT64
brand_value_idSTRING
brand_value_nameSTRING
buy_box_winnerBOOL
campaign_idFLOAT64
catalog_listingBOOL
channelSTRING
conditionSTRING
current_levelSTRING
date_createdSTRING
deferred_stockBOOL
domain_idSTRING
family_idFLOAT64
family_nameSTRING
has_discountBOOL
image_qualitySTRING
item_idSTRING
listing_type_idSTRING
logistic_typeSTRING
official_store_idFLOAT64
permalinkSTRING
priceFLOAT64
price_usdFLOAT64
recommendedBOOL
statusSTRING
thumbnailSTRING
titleSTRING
user_product_idSTRING
user_product_nameSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: product_items__tags

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
acosFLOAT64
advertiser_idFLOAT64
advertising_items_quantityFLOAT64
campaign_idFLOAT64
clicksFLOAT64
costFLOAT64
cpcFLOAT64
ctrFLOAT64
cvrFLOAT64
dateSTRING
direct_amountFLOAT64
direct_items_quantityFLOAT64
direct_units_quantityFLOAT64
indirect_amountFLOAT64
indirect_items_quantityFLOAT64
indirect_units_quantityFLOAT64
item_idSTRING
organic_items_quantityFLOAT64
organic_units_amountFLOAT64
organic_units_quantityFLOAT64
printsFLOAT64
roasFLOAT64
sovFLOAT64
total_amountFLOAT64
units_quantityFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

How the Mercado Ads sync works

After the first load, Kaivo keeps your BigQuery warehouse up to date for you. Where Mercado Ads supports it, each sync pulls only new and changed records so it stays fast; otherwise it refreshes the whole table. Every record keeps its original ID, so you won't get duplicate rows.

Frequently asked questions

How long does the initial sync take for Mercado Ads?

It depends on how much history is in your Mercado Ads account. Most initial syncs finish within minutes, while large accounts can take a few hours. After that, syncs only fetch new and changed records, so they're much faster.

Can I sync only some tables or columns?

Yes. You pick which tables to sync when you set up the connection and can change the selection later. Tables you don't select are never copied to your warehouse.

What happens when Mercado Ads's schema changes?

New fields are never added automatically. You choose which fields to sync, so data you haven't selected (sensitive personal data, for example) never lands in your warehouse. When a new field appears, it becomes available for you to add. What happens to removed or renamed fields depends on a table's sync mode: full-refresh tables always match what's currently in Mercado Ads, so dropped fields disappear, while incremental tables keep their existing columns and history, so an old field stays and newly added fields fill in over time.

How do I handle GDPR or data deletion requests?

Your data lives in your own Kaivo-managed BigQuery warehouse, so the most direct option is to delete or anonymise specific records right in BigQuery. If you delete data in Mercado Ads instead, full-refresh tables drop it on the next sync, while incremental tables keep it, so you would remove the row in BigQuery or ask us to run a full refresh. To remove everything, delete the Mercado Ads connector in Kaivo and all of its synced data is deleted with it.

Common use cases for Mercado Ads data

Campaign performance

Use the campaigns and metrics tables to track impressions, clicks, and conversions over time.

Cross-format reporting

Compare brand, display, and product campaigns to see what drives the best return.

Keyword analysis

Join brand_keywords with their metrics to find which terms perform best.

Use Mercado Ads data in your AI and BI tools

Once Mercado Ads data lands in your Kaivo-managed BigQuery warehouse, you can explore it with AI tools or any BI tool that connects to BigQuery. Here's how the most common destinations work with Mercado Ads data.

Claude

Use Kaivo's MCP server to give Claude secure, workspace-scoped access to your data. Setup guide →

Power BI

Microsoft's BI tool with a native BigQuery connector. Supports direct query and scheduled refresh. Setup guide →

Data Studio

Free Google BI tool with native BigQuery support. One-click connection to your Kaivo warehouse; great for SMB teams on Google Workspace. Setup guide →

Tableau

The premium analytics standard, with native BigQuery integration. Setup guide →

Google Sheets

Use Connected Sheets to query BigQuery directly from a spreadsheet, with no SQL. Setup guide →

Excel

Connect via Power Query's BigQuery connector. Setup guide →

Metabase

Open-source BI tool with strong BigQuery support. Setup guide →

See our pricing page for Mercado Ads connector pricing and plan details.

Was this helpful?

Still need help? Share an idea