Twitter Ads provides an effective advertising channel that allows businesses to reach out to their potential customers through Twitter’s vast network. It enables this by providing an accessible medium to run and manage Targeted Ad Campaigns in engaging and visual forms.

Analyzing the data generated through these Campaigns can help businesses understand how to fine-tune and effectively optimize their Marketing efforts. As a result, many businesses choose to export data from Twitter Ads to databases such as MySQL in order to gain mission-critical insights. This article will help you understand the two methods that can help you transfer data from Twitter Ads to MySQL.

Introduction to Twitter

Twitter Logo
Image Source:

Twitter is a Social Networking Microblogging website using which people can communicate with each other in the form of short messages called Tweets. A Tweet can be defined as a short message that can be seen by anyone who follows you on Twitter, with the hope that your words are useful and interesting to someone in your audience.

The primary purpose of Twitter is to connect people to each other and allow them to share their thoughts with a vast audience. Twitter now allows users to discover stories regarding the biggest events and news across the world, follow people or companies that post content they enjoy consuming or communicate with friends. 

Additionally, Marketers also use Twitter to increase brand awareness and delight their audience. They can do so either using their Twitter account or by leveraging Twitter Ads. Twitter Ads are seen as the perfect component of the organic content strategy within a business. Twitter Ads allows businesses to promote their content by creating Marketing Campaigns that will appear as Promoted Ads or Follower Ads. This content is then exposed to a broad audience for increased exposure and visibility.

More information about Twitter can be found here, and Twitter Ads can be found here.

Solve your data replication problems with Hevo’s reliable, no-code, automated pipelines with 150+ connectors.
Get your free trial right away!

Understanding the Key Features of Twitter Ads

The key features of Twitter Ads are as follows:

  • Performance-Based Pay: Users promoting their content on Twitter only pay once they’ve achieved their Marketing objective. Whether the goal is Twitter Feed Engagement or getting the audience to visit the official website, users only pay as people take that action. Along with that, any additional engagements or organic impressions are considered as free bonuses.
  • Tweet Engager Targetting: Tweet Engager Targeting is a popular way to reach your audience in a remarkably targeted manner. With this form of Advertising, users remarket their content to people who recently saw or engaged with their content on Twitter.
  • Low Cost Per Click: Currently, advertisers find it very cheap to market their content on Twitter because of the lack of advertising competition. Since the Cost Per Click (CPC) is auction-based, advertisers do not have to pay much to promote their content.

Introduction to MySQL

MySQL Logo
Image Source:

MySQL is considered to be one of the most popular Open-Source Relational Database Management Systems (RDBMS). MySQL implements a simple Client-Server Model that helps its users manage Relational Databases i.e. data stored in the form of rows and columns across tables. It uses the well-known query language, Structured Query Language (SQL) that allows users to perform all required CRUD (Create, Read, Update, Delete) operations.

MySQL was first developed by a Swedish company called MySQL AB in 1994. The company was then taken over by Sun Microsystems in 2008 which was finally taken over by the US tech giant, Oracle. Oracle is now responsible for the development and growth of MySQL. Even though MySQL is Open-Source and free of cost for everyone, it houses some premium features that are offered by Oracle only to those customers who are willing to pay for its usage.

Even though there is very high competition in the database market today, MySQL is considered to be the preferred database for more than 5000 companies including Uber, Netflix, Pinterest, Amazon, Airbnb, Twitter, etc.

More information about MySQL can be found here.

Understanding the Key Features of MySQL

Some of the key features of MySQL are as follows:

  • Robust Transactional Support: Implementation of ACID (Atomicity, Consistency, Isolation, Durability) properties that ensures no data loss or inconsistency.
  • Ease of Use: Considering that it makes use of SQL for querying data, anyone with basic knowledge of SQL can perform the required tasks easily.
  • Security: Implements a complex data security layer that ensures that only authorized users can access sensitive data.
  • Scalable: Considered to be highly scalable due to support for multi-threading. 
  • Roll-back Support: MySQL supports roll-backs, commits, and crash recovery for all transactions.
  • High Performance: Houses various fast load utilities along with Table Index Partitioning and Distinct Memory Caches that can ensure high performance.
Methods to Set up Twitter Ads to MySQL Migration

Method 1: Manual Twitter Ads to MySQL Migration

Twitter provides a utility called Twurl that helps you access the Twitter Ads API without having to build a Web Browser redirect. A Twurl command can be executed to fetch a list of Entities and metric values. The extracted data can then be loaded into MySQL.

Method 2: Twitter Ads to MySQL Migration Using Hevo Data

Hevo Data provides a hassle-free solution and helps you directly transfer data from Twitter Ads to MySQL without any intervention in an effortless manner. Hevo is fully-managed and completely automates the process of not only loading data from your desired source but also enriching the data and transforming it into an analysis-ready form without having to write a single line of code. Hevo’s pre-built integration with Twitter Ads and 100+ Sources (including 30+ free Data Sources like Twitter Ads) will take full charge of the data transfer process, allowing you to set up Twitter Ads to MySQL Migration seamlessly and focus solely on key business activities. 


Methods to Set up Twitter Ads to MySQL Migration

Users can set up Twitter Ads to MySQL Migration by implementing one of the following methods:

Method 1: Manual Twitter Ads to MySQL Migration

The steps involved in executing a data migration process from Twitter Ads to MySQL database are:

Step 1: Executing Twurl Authentication Command

  • Assuming Twurl is already installed and set up, execute the following command to authenticate your Twitter Ads account:
twurl authorize --consumer-key twitter_key --consumer-secret twitter_secret
  • Once the above command is executed, you will see a URL in the shell.
  • Copy this URL and paste it into the Web Browser.
  • It will generate a Pin Code that has to be copied from the Web Browser and pasted in Twurl shell to complete the process.

Step 2: Fetching List of Twitter Ads Entities

Before executing the next step, you need to understand the basics of how the Twitter Analytics API works. This API works on the basis of a hierarchy of Entities. The first step in fetching metrics of any Entity is to have information about the identifier of that Entity. The Entity could be a Promoted Tweet, a Promoted Account, or even Creative Media content.

An Entity Identifier is usually obtained when an Entity is created. You can easily get a list of all the Entities that were changed in the last 24 hours for your understanding. The API’s start_time and end_time parameters will help you get this. Execute the following command to get the list of Entities:

twurl -H "/6/stats/accounts/495o4564d45t/active_entities?entity=PROMOTED_TWEET&start_time=2020-04-08T00:00:00Z&end_time=2020-04-09T00:00:00Z"

In the above command, the API is trying to fetch the list of Promoted Tweets, for which engagement metrics have changed in the 24 hours from 8 April 2020 to 9 April 2020.

The result will be in JSON format similar to the following:

  "request": {
    "params": {
      "account_id": "18co4564d45t",
      "entity": "PROMOTED_TWEET",
      "start_time": "2020-04-08T00:00:00Z",
      "end_time": "2020-04-09T00:00:00Z"
  "data": [
      "entity_id": "2r1byn",
      "activity_start_time": "2020-04-08T21:55:20Z",
      "activity_end_time": "2020-04-09T04:43:56Z",
      "placements": [
      "entity_id": "4z41qy",
      "activity_start_time": "2020-04-08T09:11:18Z",
      "activity_end_time": "2020-04-08T15:42:59Z",
      "placements": [

In the resultant JSON, you will be can see two Entity Identifiers – 2r1byn and 4z41qy. You can now fetch the engagement metrics for these Entities.

Step 3: Fetching Metric Values from Twitter Ads

You can now use a command-line utility called jq to parse this JSON and extract the relevant metric values. In this case, only impressions, likes, and clicks are being extracted. The following command will access the API, pipe the output through jq and create a CSV file that can be loaded to MySQL:

twurl -H,4z41qy&start_time=2020-04-08&end_time=2020-04-15&granularity=TOTAL&placement=ALL_ON_TWITTER&metric_groups=ENGAGEMENT | jq -r ".data[] | [.id,.id_data[].metrics.impressions[0],.id_data[].metrics.likes[0],.id_data[].metrics.clicks[0]] | @csv" >> tweet_engagement.csv

In the above step, the API is fetching the engagement metrics for 7 days from 8 to 15 April 2020.

The result of this command will be a CSV file similar to the following:


Step 4: Loading CSV Data into MySQL

You can now load the data to the MySQL table. Before executing this step, you need to ensure that a table called tweet_engagements with columns for entity_id, impressions, likes, and clocks are created. Execute the following command to load the data to this table:

LOAD DATA LOCAL INFILE tweet_engagement.csv’ 
INTO TABLE tweet_engagements 
(entity_id, impressions, likes, clicks );

That concludes the basic steps in loading data manually from Twitter Ads to MySQL

Limitations of Manual Twitter Ads to MySQL Migration

The limitations of manually setting up Twitter Ads to MySQL Migration are as follows:

  • The Analytics API returns results only for a maximum of 20 Entities at one time. If there are more than 20 Entities, the application logic will have to execute this in a phased manner. 
  • The API is rate-limited. So the application logic should have a provision to keep track of Twitter Rate Status API and spawn requests without interfering with Twitter Rate Limits.
  • Analytics API returns result synchronously only for smaller time windows. For time windows of more than seven days, asynchronous APIs have to be used. 
  • The most typical requirement for businesses is to have this data continuously synced to their databases. This means a production execution should have scheduling capabilities as well as logic to handle updates, duplicates, etc. 
  • The learning curve in implementing this is steep. The developer needs to have a complete grasp of all the Twitter Ads API and their complex JSON structures to complete this.

Method 2: Twitter Ads to MySQL Migration Using Hevo Data

Hevo Logo
Image Source

Hevo Data helps you directly transfer data from Twitter Ads and various other sources to MySQL, Business Intelligence tools, Data Warehouses, or a destination of your choice in a completely hassle-free & automated manner. Hevo is fully managed and completely automates the process of not only loading data from your desired source but also enriching the data and transforming it into an analysis-ready form without having to write a single line of code. Its fault-tolerant architecture ensures that the data is handled in a secure, consistent manner with zero data loss.

Hevo takes care of all your data preprocessing needs required to set up Twitter Ads to MySQL Migration and lets you focus on key business activities and draw a much powerful insight on how to generate more leads, retain customers, and take your business to new heights of profitability. It provides a consistent & reliable solution to manage data in real-time and always have analysis-ready data in your desired destination. 

The following steps can be implemented to set up Twitter Ads to MySQL Migration using Hevo:

  • Configure Source: Connect Hevo Data with Twitter Ads by providing a unique name for your Pipeline, along with details about your Twitter Ads account such as the API Key, API Secret Key, etc.
Hevo Twitter Source
Image Source:
  • Integrate Data: Complete Twitter Ads to MySQL migration by providing information about your MySQL database and its credentials such as database name, username, and password, along with information about port number associated with your MySQL database.
Hevo MySQL Destination
Image Source:

Check Out What Makes Hevo Amazing:

  • Secure: Hevo has a fault-tolerant architecture that ensures that the data is handled in a secure, consistent manner with zero data loss.
  • Schema Management: Hevo takes away the tedious task of schema management & automatically detects schema of incoming data and maps it to the destination schema.
  • Minimal Learning: Hevo, with its simple and interactive UI, is extremely simple for new customers to work on and perform operations.
  • Hevo Is Built To Scale: As the number of sources and the volume of your data grows, Hevo scales horizontally, handling millions of records per minute with very little latency.
  • Incremental Data Load: Hevo allows the transfer of data that has been modified in real-time. This ensures efficient utilization of bandwidth on both ends.
  • Live Support: The Hevo team is available round the clock to extend exceptional support to its customers through chat, email, and support calls.
  • Live Monitoring: Hevo allows you to monitor the data flow and check where your data is at a particular point in time.


This article provided you with a step-by-step guide on how you can set up Twitter Ads to MySQL Migration manually or using Hevo. However, there are certain limitations associated with the manual method. If those limitations are not a concern to your operations, then using it is the best option but if it is, then you should consider using automated Data Integration platforms like Hevo.

Hevo Data, a No-code Data Pipeline provides you with a consistent and reliable solution to manage data transfer between a variety of sources and a wide variety of Desired Destinations with a few clicks.

Visit our Website to Explore Hevo

Hevo Data with its strong integration with 100+ sources (including 30+ free sources such as Twitter Ads) allows you to not only export data from your desired data sources & load it to the destination of your choice such as MySQL, but also transform & enrich your data to make it analysis-ready so that you can focus on your key business needs and perform insightful analysis using BI tools. It will move your data from Twitter Ads to MySQL for free.

Want to take Hevo for a spin?

SIGN UP and experience the feature-rich Hevo suite first hand. You can also have a look at the unbeatable pricing that will help you choose the right plan for your business needs.

Share your experience of moving data from Twitter Ads to MySQL in the comments section below!

No-code Data Pipeline for MySQL