Back to Blog

How to Build an Automated Data Monitoring Workflow with Scrapeless + Google Trends

Emily Chen
Emily Chen

Advanced Data Extraction Specialist

05-Jun-2025

In today’s era of information overload, search trend data has become a key asset for businesses and content creators when making informed decisions. As one of the world’s most popular trend analysis tools, Google Trends offers powerful real-time insights into search behavior. However, manually checking data can be time-consuming and inefficient—especially when continuous monitoring is required.

Fortunately, by combining Scrapeless with the Google Trends API, you can easily build an automated data monitoring workflow. Whether you want to track the popularity of a specific industry keyword or receive alerts when trend values exceed a certain threshold, this solution helps you achieve your goals efficiently. In this article, we’ll walk you through how to use Scrapeless with an automation platform to create a flexible, scalable, and fully automated trend monitoring system.


Why Integrate Scrapeless with Make.com?

Scrapeless offers a highly reliable and developer-friendly interface to Google Trends data:

  • Advanced anti-detection tech to bypass bot blocks
  • Access to region-specific trends from 195+ countries
  • 99.9% uptime with real-time data syncing
  • Filter results by category, country, keyword, and timeframe
  • JSON output with clean timeline data and metadata

Preparation

  1. Sign up for Scrapeless and get your API Key
  2. Locate your API Token and copy it for later use
Locate your API Token and copy it for later use

⚠️ Note: Please keep your API Token secure and do not share it with others.


1. Workflow Template Function Overview

Template Name: Scrapeless Google Trends Monitoring & Auto Alert

Purpose:
Automatically fetch the interest over time data for a specific keyword (e.g., "AI") from Google Trends on a daily basis. If the latest trend value exceeds the defined threshold (set to 80), an email alert will be sent to the user via Gmail.


2. Step-by-Step Workflow Setup

You can manually build this workflow in Make.com by following these steps:

Step 1: Add the HTTP Request Module (Call Scrapeless)

Purpose: Send a request to the Scrapeless API to retrieve Google Trends interest data for the specified keyword.

  1. Click the "+" button to add a module, and select HTTP > Make a request.
  2. Configure the module as follows:
Item Set Value
Method POST
URL https://api.scrapeless.com/api/v1/scraper/request
Body type Raw
Content type application/json
Request content (See JSON request body below)
Headers Add two items:
① Content-Type: application/json
② x-api-token: YOUR_API_KEY

Request body example (paste into Request content):

Copy
{
  "actor": "scraper.google.trends",
  "input": {
    "q": "AI",
    "date": "today 1-m",
    "data_type": "interest_over_time",
    "hl": "en",
    "tz": "420",
    "geo": "",
    "cat": "",
    "property": ""
  },
  "proxy": {
    "country": ""
  }
}

Step 2: Set the variable latest_trend_value

  1. Add module: Tools > Set variable
  2. Configure as follows:
Item Value
Variable name latest_trend_value
Scope Roundtrip (lifetime limited to a single execution cycle)
Value {{1.data.interest_over_time.timeline_data[30].value[0]}} (Make sure the path matches the actual response)

📝Explanation: Here we extract the trend value of the 31st day (the most recent day).

Step 3: Set the variable latest_date

  1. Add another module: Tools > Set variable
  2. Configure as follows:
Item Value
Variable name latest_date
Scope Roundtrip
Value {{1.data.interest_over_time.timeline_data[30].date}} (Make sure the path matches correctly)

Step 4: Set up conditional judgment Router (branch)

  1. Add module: Flow Control > Router
  2. Add a route with a name such as Trend Above 80
  3. Configure filter conditions:
Copy
 Condition: latest_trend_value > 80

Use the expression: {{4.latest_trend_value}} > 80

Step 5: Add the Send Email module under the Router branch (using Gmail)

  1. Under the Trend Above 80 route, add the module: Gmail > Send an email
  2. Authorize your Google account.
  3. Configure as follows:
Item Value
To Your email address (e.g., you@example.com)
Subject 🔥 AI Trend Alert: {{4.latest_trend_value}}/100
Content (HTML) Copy the code below
Copy
Alert: AI is trending high!
📊 Trend Score: {{4.latest_trend_value}}/100  
📅 Date: {{6.latest_date}}  
🎯 Threshold: 80  
Automated alert from Make x Scrapeless

Optional enhancements:

  • Add a scheduler module to automatically trigger the process every day.
  • Add a module: Flow Control > Scheduler → Set it to execute once a day at a certain time.

3. What does this automation process achieve?

Step Action Description Tool Module Result
1 Request Google Trends data from Scrapeless HTTP Request Obtain JSON data
2 Extract the latest trend value and save as variable Set Variable Get trend value
3 Extract the latest date and save as variable Set Variable Get date
4 Check if the trend value is greater than 80 Router + Condition Filter Continue if yes; stop if no
5 Send email notification about trend surge Gmail Automatic email alert

4. How can you extend this template?

  1. Make keywords dynamic input: for example, provide keywords via Google Sheets or Webhook.
  2. Monitor multiple keywords: loop through multiple keywords, monitor each, and trigger emails separately.
  3. Add Slack / Telegram notifications: to replace or supplement Gmail alerts.
  4. Write data into Google Sheets or Notion: to keep a historical archive of trends.
  5. Add a scheduler: set the automation to run at fixed times daily (e.g., 8 AM every day).

5. Import the Pre-Built Workflow(Easy method)

We've created a complete Make.com blueprint that includes all the modules and configurations you need:

Workflow Blueprint - Google Trends Monitoring

Step 1. Download the blueprint - [makexscrapeless.json]

Copy
{
    "name": "Scrapeless",
    "flow": [
        {
            "id": 1,
            "module": "http:ActionSendData",
            "version": 3,
            "parameters": {
                "handleErrors": true,
                "useNewZLibDeCompress": true
            },
            "mapper": {
                "ca": "",
                "qs": [],
                "url": "https://api.scrapeless.com/api/v1/scraper/request",
                "data": "{\n    \"actor\": \"scraper.google.trends\",\n    \"input\": {\n        \"q\": \"AI\",\n        \"date\": \"today 1-m\",\n        \"data_type\": \"interest_over_time\",\n        \"hl\": \"en\",\n        \"tz\": \"420\",\n        \"geo\": \"\",\n        \"cat\": \"\",\n        \"property\": \"\"\n    },\n    \"proxy\": {\n        \"country\": \"\"\n    }\n}",
                "gzip": true,
                "method": "post",
                "headers": [
                    {
                        "name": "Content-Type",
                        "value": "application/json"
                    },
                    {
                        "name": "x-api-token",
                        "value": "YOUR_API_KEY"
                    }
                ],
                "timeout": "",
                "useMtls": false,
                "authPass": "",
                "authUser": "",
                "bodyType": "raw",
                "contentType": "application/json",
                "serializeUrl": false,
                "shareCookies": false,
                "parseResponse": false,
                "followRedirect": true,
                "useQuerystring": false,
                "followAllRedirects": false,
                "rejectUnauthorized": true
            },
            "metadata": {
                "designer": {
                    "x": 48,
                    "y": -26
                },
                "restore": {
                    "expect": {
                        "qs": {
                            "mode": "chose"
                        },
                        "method": {
                            "mode": "chose",
                            "label": "POST"
                        },
                        "headers": {
                            "mode": "chose",
                            "items": [
                                null,
                                null
                            ]
                        },
                        "bodyType": {
                            "label": "Raw"
                        },
                        "contentType": {
                            "label": "JSON (application/json)"
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "handleErrors",
                        "type": "boolean",
                        "label": "Evaluate all states as errors (except for 2xx and 3xx )",
                        "required": true
                    },
                    {
                        "name": "useNewZLibDeCompress",
                        "type": "hidden"
                    }
                ],
                "expect": [
                    {
                        "name": "url",
                        "type": "url",
                        "label": "URL",
                        "required": true
                    },
                    {
                        "name": "serializeUrl",
                        "type": "boolean",
                        "label": "Serialize URL",
                        "required": true
                    },
                    {
                        "name": "method",
                        "type": "select",
                        "label": "Method",
                        "required": true,
                        "validate": {
                            "enum": [
                                "get",
                                "head",
                                "post",
                                "put",
                                "patch",
                                "delete",
                                "options"
                            ]
                        }
                    },
                    {
                        "name": "headers",
                        "spec": [
                            {
                                "name": "name",
                                "type": "text",
                                "label": "Name",
                                "required": true
                            },
                            {
                                "name": "value",
                                "type": "text",
                                "label": "Value"
                            }
                        ],
                        "type": "array",
                        "label": "Headers"
                    },
                    {
                        "name": "qs",
                        "spec": [
                            {
                                "name": "name",
                                "type": "text",
                                "label": "Name",
                                "required": true
                            },
                            {
                                "name": "value",
                                "type": "text",
                                "label": "Value"
                            }
                        ],
                        "type": "array",
                        "label": "Query String"
                    },
                    {
                        "name": "bodyType",
                        "type": "select",
                        "label": "Body type",
                        "validate": {
                            "enum": [
                                "raw",
                                "x_www_form_urlencoded",
                                "multipart_form_data"
                            ]
                        }
                    },
                    {
                        "name": "parseResponse",
                        "type": "boolean",
                        "label": "Parse response",
                        "required": true
                    },
                    {
                        "name": "authUser",
                        "type": "text",
                        "label": "User name"
                    },
                    {
                        "name": "authPass",
                        "type": "password",
                        "label": "Password"
                    },
                    {
                        "name": "timeout",
                        "type": "uinteger",
                        "label": "Timeout",
                        "validate": {
                            "max": 300,
                            "min": 1
                        }
                    },
                    {
                        "name": "shareCookies",
                        "type": "boolean",
                        "label": "Share cookies with other HTTP modules",
                        "required": true
                    },
                    {
                        "name": "ca",
                        "type": "cert",
                        "label": "Self-signed certificate"
                    },
                    {
                        "name": "rejectUnauthorized",
                        "type": "boolean",
                        "label": "Reject connections that are using unverified (self-signed) certificates",
                        "required": true
                    },
                    {
                        "name": "followRedirect",
                        "type": "boolean",
                        "label": "Follow redirect",
                        "required": true
                    },
                    {
                        "name": "useQuerystring",
                        "type": "boolean",
                        "label": "Disable serialization of multiple same query string keys as arrays",
                        "required": true
                    },
                    {
                        "name": "gzip",
                        "type": "boolean",
                        "label": "Request compressed content",
                        "required": true
                    },
                    {
                        "name": "useMtls",
                        "type": "boolean",
                        "label": "Use Mutual TLS",
                        "required": true
                    },
                    {
                        "name": "contentType",
                        "type": "select",
                        "label": "Content type",
                        "validate": {
                            "enum": [
                                "text/plain",
                                "application/json",
                                "application/xml",
                                "text/xml",
                                "text/html",
                                "custom"
                            ]
                        }
                    },
                    {
                        "name": "data",
                        "type": "buffer",
                        "label": "Request content"
                    },
                    {
                        "name": "followAllRedirects",
                        "type": "boolean",
                        "label": "Follow all redirect",
                        "required": true
                    }
                ]
            }
        },
        {
            "id": 4,
            "module": "util:SetVariable2",
            "version": 1,
            "parameters": {},
            "mapper": {
                "name": "latest_trend_value",
                "scope": "roundtrip",
                "value": "{{1.data.interest_over_time.timeline_data[30].value[0]}}"
            },
            "metadata": {
                "designer": {
                    "x": 361,
                    "y": -29
                },
                "restore": {
                    "expect": {
                        "scope": {
                            "label": "One cycle"
                        }
                    }
                },
                "expect": [
                    {
                        "name": "name",
                        "type": "text",
                        "label": "Variable name",
                        "required": true
                    },
                    {
                        "name": "scope",
                        "type": "select",
                        "label": "Variable lifetime",
                        "required": true,
                        "validate": {
                            "enum": [
                                "roundtrip",
                                "execution"
                            ]
                        }
                    },
                    {
                        "name": "value",
                        "type": "any",
                        "label": "Variable value"
                    }
                ],
                "interface": [
                    {
                        "name": "latest_trend_value",
                        "label": "latest_trend_value",
                        "type": "any"
                    }
                ]
            }
        },
        {
            "id": 6,
            "module": "util:SetVariable2",
            "version": 1,
            "parameters": {},
            "mapper": {
                "name": "latest_date",
                "scope": "roundtrip",
                "value": "{{1.data.interest_over_time.timeline_data[30].date}}"
            },
            "metadata": {
                "designer": {
                    "x": 661,
                    "y": -29
                },
                "restore": {
                    "expect": {
                        "scope": {
                            "label": "One cycle"
                        }
                    }
                },
                "expect": [
                    {
                        "name": "name",
                        "type": "text",
                        "label": "Variable name",
                        "required": true
                    },
                    {
                        "name": "scope",
                        "type": "select",
                        "label": "Variable lifetime",
                        "required": true,
                        "validate": {
                            "enum": [
                                "roundtrip",
                                "execution"
                            ]
                        }
                    },
                    {
                        "name": "value",
                        "type": "any",
                        "label": "Variable value"
                    }
                ],
                "interface": [
                    {
                        "name": "latest_date",
                        "label": "latest_date",
                        "type": "any"
                    }
                ]
            }
        },
        {
            "id": 7,
            "module": "builtin:BasicRouter",
            "version": 1,
            "mapper": null,
            "metadata": {
                "designer": {
                    "x": 929,
                    "y": -33
                }
            },
            "routes": [
                {
                    "flow": [
                        {
                            "id": 8,
                            "module": "google-email:ActionSendEmail",
                            "version": 2,
                            "parameters": {
                                "account": 1
                            },
                            "filter": {
                                "name": "Trend Above 80",
                                "conditions": [
                                    [
                                        {
                                            "a": "{{4.latest_trend_value}}",
                                            "o": "number:greater",
                                            "b": "80"
                                        }
                                    ]
                                ]
                            },
                            "mapper": {
                                "from": "",
                                "to": [
                                    "YOUR_EMAIL"
                                ],
                                "subject": "🔥 AI Trend Alert: {{4.latest_trend_value}}/100",
                                "html": "Alert: AI is trending high!\n\n📊 Trend Score:{{4.latest_trend_value}}/100\n📅 Date: {{6.latest_date}}\n🎯 Threshold: 80\n\nAutomated alert from Make x Scrapeless",
                                "attachments": [],
                                "cc": [],
                                "bcc": []
                            },
                            "metadata": {
                                "designer": {
                                    "x": 1240,
                                    "y": -21
                                },
                                "restore": {
                                    "parameters": {
                                        "account": {
                                            "label": "My Google Restricted connection",
                                            "data": {
                                                "scoped": "true",
                                                "connection": "google-restricted"
                                            }
                                        }
                                    },
                                    "expect": {
                                        "to": {
                                            "mode": "chose",
                                            "items": [
                                                null
                                            ]
                                        },
                                        "attachments": {
                                            "mode": "chose"
                                        },
                                        "cc": {
                                            "mode": "chose"
                                        },
                                        "bcc": {
                                            "mode": "chose"
                                        }
                                    }
                                },
                                "parameters": [
                                    {
                                        "name": "account",
                                        "type": "account:google-restricted",
                                        "label": "Connection",
                                        "required": true
                                    }
                                ],
                                "expect": [
                                    {
                                        "name": "from",
                                        "type": "text",
                                        "label": "From"
                                    },
                                    {
                                        "name": "to",
                                        "type": "array",
                                        "label": "To",
                                        "required": true,
                                        "spec": {
                                            "name": "value",
                                            "type": "email",
                                            "label": "Email address",
                                            "required": true
                                        }
                                    },
                                    {
                                        "name": "subject",
                                        "type": "text",
                                        "label": "Subject"
                                    },
                                    {
                                        "name": "html",
                                        "type": "text",
                                        "label": "Content"
                                    },
                                    {
                                        "name": "attachments",
                                        "type": "array",
                                        "label": "Attachments",
                                        "spec": [
                                            {
                                                "name": "fileName",
                                                "label": "File name",
                                                "type": "filename",
                                                "required": true,
                                                "semantic": "file:name"
                                            },
                                            {
                                                "name": "data",
                                                "label": "Data",
                                                "type": "buffer",
                                                "required": true,
                                                "semantic": "file:data"
                                            },
                                            {
                                                "name": "cid",
                                                "label": "Content-ID",
                                                "type": "text"
                                            }
                                        ]
                                    },
                                    {
                                        "name": "cc",
                                        "type": "array",
                                        "label": "Copy recipient",
                                        "spec": {
                                            "type": "email",
                                            "label": "Email address",
                                            "name": "value"
                                        }
                                    },
                                    {
                                        "name": "bcc",
                                        "type": "array",
                                        "label": "Blind copy recipient",
                                        "spec": {
                                            "type": "email",
                                            "label": "Email address",
                                            "name": "value"
                                        }
                                    }
                                ]
                            }
                        }
                    ]
                }
            ]
        }
    ],
    "metadata": {
        "instant": false,
        "version": 1,
        "scenario": {
            "roundtrips": 1,
            "maxErrors": 3,
            "autoCommit": true,
            "autoCommitTriggerLast": true,
            "sequential": false,
            "slots": null,
            "confidential": false,
            "dataloss": false,
            "dlq": false,
            "freshVariables": false
        },
        "designer": {
            "orphans": []
        },
        "zone": "eu2.make.com",
        "notes": []
    }
}

Included:

  • Timing trigger (daily trend detection)
  • Scrapeless API request module
  • JSON data processing and variable extraction
  • Threshold judgment logic (intelligent filtering)
  • Email notification module (supports Gmail)
  • Basic error handling mechanism

Step 2: Import into Make.com

  1. Log in to Make.com
  2. Click "Create a new scenario"
  3. Click the gear icon ⚙️ in the bottom toolbar of the page
  4. Select "Import Blueprint", then upload the .json file
  5. Once the blueprint is imported successfully, the complete workflow will be automatically created (all modules connected)

Step 3: Configure Your Workflow

Here are several key parts you need to customize:

  1. Set API Token

    • Open the HTTP Request module
    • Replace the value in "x-api-token" with your Scrapeless API key
  2. Configure Query Parameters

Parameter Description Example
q Search keyword "AI", "iPhone 15", "your-brand-name"
data_type Data type interest_over_time (recommended)
date Time range "today 1-m", "today 3-m"
hl Language "en", "fr", "de"
tz Time zone "420" (Pacific Time), "0" (GMT)
geo Region (optional) "US", "FR"; leave blank for worldwide
cat Category (optional) Leave blank or select a specific category
property Search channel (optional) "news", "youtube", "froogle"
  1. Set Alert Threshold

    • Open the filter inside the Router module
    • Default threshold is 80; adjust higher or lower as needed
    • A higher value means only more significant trends will trigger alerts

  1. Configure Email Notifications (or other channels)

    • Open the Gmail module and connect your email account
    • Set up email content (HTML supported)
    • Can be extended to multi-channel notifications like Slack, SMS, etc.

Step 4: Test and Activate

  1. Click "Run once" to test the workflow
  2. Check whether each module runs successfully
  3. If the trend value meets the threshold, you should receive a test email
  4. If everything is correct, Activate the workflow to enable it

Common Troubleshooting

Issue Possible Cause Solution
Cannot connect to API Incorrect token configuration Check the x-api-token value in the HTTP Request module
Email not received Email not connected or went to spam folder Check the Gmail module connection and verify the email content
Module reference error Incorrect variable path reference Ensure the variable path like {{1.data.interest_over_time.timeline_data[30].value[0]}} matches the correct module number

Regional Trend Monitoring (Optional)

  • Modify the geo parameter in the Scrapeless request
  • Set up separate monitoring for multiple countries or regions
  • Ideal for comparative analysis across international markets

Advanced Alert Logic (Optional)

  • Add multiple notification channels (e.g., Slack + Email + SMS)
  • Configure tiered alerts based on different trend levels
  • Add "working hours" restrictions to send alerts only during the day

Data Integration Use Cases (Optional)

  • Write trend data into Google Sheets
  • Push data to CRM for potential lead scoring
  • Integrate into data dashboards (e.g., Power BI, Looker Studio)

6. Suggested Extended Use Cases

Use Case Example Keywords Purpose
Real-time monitoring of the AI industry AI, ChatGPT, LLM Stay ahead of public sentiment trends and optimize topic release timing
Trending product monitoring in e-commerce TikTok, summer dress Quickly launch marketing content when product or platform terms spike
Regional event trend alerts Earthquake, Elections Monitor search spikes for regional social or natural events to aid PR
SEO content strategy planning SEO, backlinks Adjust SEO content update rhythm based on trend changes
Investor sentiment or industry signals bitcoin, Nvidia stock Detect market sentiment behind keyword surges and support sentiment analysis

Conclusion

The combination of Scrapeless's industry-leading Google Trends API and Make.com's powerful automation platform creates unprecedented opportunities for businesses to harness trend intelligence. This isn't just about monitoring data—it's about transforming how your organization anticipates, responds to, and capitalizes on market movements.

Key Strategic Advantages:

  • Speed: React to trends in hours, not days or weeks
  • Precision: Target opportunities with surgical accuracy
  • Scale: Monitor thousands of trends without additional headcount
  • Foresight: Anticipate market movements before competitors
  • ROI: Generate measurable business value from trend intelligence

Why Industry Leaders Choose This Solution:

  • Proven Reliability: Scrapeless's 99.9% uptime ensures you never miss critical trends
  • Battle-Tested: Used by Fortune 500 companies and high-growth startups
  • Competitive Moat: Advanced anti-detection technology others can't replicate
  • Business Focused: Designed for business impact, not just data collection

The digital economy moves at the speed of trends. Organizations that can detect, analyze, and act on trending topics faster than their competition don't just survive—they dominate their markets.

Ready to transform your trend intelligence?
Start with Scrapeless and Make.com today, and discover what happens when cutting-edge technology meets strategic business intelligence.


Scrapeless strictly complies with applicable laws and regulations, accessing only publicly available data in accordance with website terms of service and privacy policies. This solution is designed for legitimate business intelligence and marketing optimization purposes.

At Scrapeless, we only access publicly available data while strictly complying with applicable laws, regulations, and website privacy policies. The content in this blog is for demonstration purposes only and does not involve any illegal or infringing activities. We make no guarantees and disclaim all liability for the use of information from this blog or third-party links. Before engaging in any scraping activities, consult your legal advisor and review the target website's terms of service or obtain the necessary permissions.

Most Popular Articles

Catalogue