How G-MOS helped scale search campaigns for 50,000 bus routes
Jun 18, 2025
Cases

Client
KLR is a Ukrainian carrier operating international bus routes across 16 European countries. The company offers over 50 regular destinations with approximately 1,000 possible routes' combinations.
Challenger
Scale search campaigns to cover all available route combinations.
Increase ticket sales through non-brand search queries.
Maintain ad relevance with daily schedule and price changes.
Preconditions and request
Let's begin with the scale. KLR operates over 50 bus destinations in 16 European countries. Each route has around 1,000 combinations, considering stops in different cities. In total, this amounts to 50,000 possible destinations, each requiring its own search ad groups.

Let's start with the scale. KLR operates over 50 bus routes in 16 European countries. Each route has around 1,000 combinations, considering stops in different cities. This totals up to 50,000 possible destinations, each requiring its own search ad groups.
KLR was running only 100 ad groups in Google Ads – a mere 0.2% of the maximum potential.
Manually setting up search ad groups was a significant challenge. Under ideal conditions, it would have required five specialists and approximately a month to create and configure these campaigns, spending an average of 1 minute on each of the 50,000 ad groups. Such a large volume of routine work for an entire team would have been costly.
Furthermore, any price changes or new routes would have necessitated manual updates, which was time-consuming and prone to errors with landing pages and displaying unavailable routes.
Ultimately, the low semantic coverage meant that the business couldn't offer ads to thousands of potential passengers, leading to a loss of market share.
G-MOS's task was to ensure the client's ads were always up-to-date.
The carrier's audience was primarily Ukrainians living abroad or traveling. However, there was also potential to reach foreigners traveling between European cities.
This presented an additional challenge, as these factors complicated the semantic structure and ad creatives. We needed to adapt the keywords for each ad in three languages: Ukrainian, the language of the departure point, and the language of the destination.
The solution
Working with Google Ads Campaigns

When KLR started to integrate G-MOS in the processes, we observed a common scenario for many large Google Ads accounts: some things were working, some were simply stagnant, and the greatest potential remained untapped. Some campaigns were formally running with minimal results, others weren't even launched, and hundreds of potentially profitable routes were simply not covered.
Having been entrusted with a larger budget, we decided to completely overhaul everything from strategy to account structure.
The changes affected all levels – from budget allocation to in-depth semantic analysis and campaign automation. We implemented:
A complete audit.
Updated ad templates.
A complete overhaul of the semantic core.
Rewritten negative keywords, added missing extensions, and updated sitelink extensions.
Optimized assets in Performance Max.
Performance Max campaign assets.
For effective Performance Max campaign launches in Google, various asset types are needed: text, images, videos, and ad extensions. Each type plays a crucial role in creating a comprehensive asset group for the campaign.
In parallel, we refined the logic of the campaigns themselves. Let's break this down step by step.
Brand Campaigns
Initially, these were focused solely on conversions. This seemed logical, but in reality, the client was losing out to competitors actively targeting KLR brand queries.
Therefore, we changed our approach. Instead of solely focusing on conversions, we shifted the campaigns to maximize impression share. This allowed us to reach everyone searching for KLR, not just those the system deemed likely buyers. We deliberately removed this filter, as it only hindered brand traffic.
The result:
We now have complete control over the search results for brand queries and have significantly reduced the impact of competitor ads trying to intercept our brand.
Competitor Campaigns
Previously, the client's team didn't utilize this type of campaign at all. So, we launched a new campaign targeting competitor brand queries. Ads began appearing to users searching for other carriers.
This was a calculated risk, as we knew KLR's service quality was a strong point. We believed that if someone traveled with our client once, they were likely to become a regular customer. This bet paid off – the campaign started generating sales within the first few weeks of launch.
Performance Max
These campaigns were already set up in the account, but their effectiveness could be significantly improved.
We replaced creatives, added videos and banners, and configured audience signals for more precise targeting.
The result:
This became the second most important type of promotion campaign with high efficiency.
Search and DSA Campaigns
Before our involvement, route coverage was very limited, and DSA campaigns were not used at all. We decided it was time to do the seemingly impossible – scale to all 50,000 destinations.
To simplify and speed up ad launches, automation was necessary. The best option for this was our proprietary G-Mos service.
Step One: Creating a Dynamic Feed
Together with KLR's development team, we created a special dynamic feed that automatically updates based on CRM data.
To ensure correct data transfer to G-Mos, KLR's developers adapted their CRM to the feed structure requirements.
The feed contained:
A list of all transportation routes – departure and arrival points, including stops.
Up-to-date ticket prices for each route.
An "actuality" marker – information on whether a route is active within the next 15 days.
Route names in three languages (Ukrainian, English, and other languages) for use in keywords.
Landing pages (URLs) for each specific route – so that each ad directed users to the exact page where they could make a purchase.
Step Two: Connecting the Feed to G-Mos
A key feature of G-MOS (GMOS) is its speed. The system automatically reads all available data, allowing for virtually immediate actions:
Generate thousands of ad groups with precise wording for a specific route.
Create relevant keywords based on route names, cities, and search query variations.
Formulate ad texts according to templates, dynamically pulling in route names, prices, destinations, etc.
Utilize landing pages from the feed, ensuring each user is directed to the exact desired route.
And most importantly, maintain ad relevance according to the dynamic feed data.
Key takeaway:
We didn't increase the team size, and the client didn't incur additional costs. One specialist oversaw the G-MOS (GMOS) operation. This significantly saved the client's budget while providing the full range of necessary services.
Additionally, we implemented Dynamic Search Ads (DSA) in priority campaigns, making the reach even broader yet still controlled.
Dynamic Search Ads are Google Ads campaigns that automatically generate ads based on your website's content, instead of creating separate ads for each keyword.
What CRM Data Does G-Mos Use to Create Ads
To form ad groups and ads, G-Mos automatically reads the following from the CRM:
Route Names: Used to create ad groups and keywords. Additionally, route names are dynamically integrated into ad headlines and texts, making them highly relevant to user queries.
Landing Pages (URLs): A specific route page that matches the advertised destination is automatically pulled into each ad. This shortens the user's path to purchase and increases the conversion rate.
Ticket Prices: Displayed directly in the ad text so that potential customers immediately see the price before clicking. This sets expectations and facilitates decision-making at the search results stage.
Route Actuality: The system updates automatically, daily, for all tickets within the next 15 days. If a trip is unavailable, the ad group is automatically turned off; once it becomes available again, it's turned back on. This avoids irrelevant ads and maintains account quality.

RESULTS
Automation through G-Mos didn't just provide scale for the client – it completely transformed the logic of working with advertising in Google Ads. We achieved not only speed of launch but also stability, accuracy, and relevance at all levels, resulting in exceeding key business goals.
Over 50,000 ads in 3 hours |
Created by G-Mos in the Google Ads account |
*with relevant keywords and texts, fully ready to run.
Automated G-Mos campaigns generated 45% of all sales from Google Ads.
For comparison, other campaigns:
24% — Brand advertising
24% — Performance Max
7% — Other campaigns

Integration of the client's CRM with G-Mos took up to 3 weeks, including iterations of revisions, but the result was a fully automated advertising ecosystem.
We also achieved a flexible account structure in the form of linked campaigns for each country. For example:
"Italy → Ukraine" – a separate campaign with all possible departure points in Italy and arrival points in Ukraine.
"Ukraine → Italy" – a mirror campaign with Ukrainian departure cities and Italian arrival cities.
This approach allowed for maximum detail in the structure and tailored ads to user queries at each stage of the journey.
In addition, automation made it possible to process tens of thousands of low-frequency queries, which are often ignored in manual campaigns.
Ultimately, this:
Reduced the cost per click due to lower competition.
Increased ad relevance and conversion rates.
Reduced costs and the number of errors.
An additional advantage of the tool was that it not only enhances Performance Max campaigns in e-commerce but can also outperform them in niches without Google Shopping. Why?
Each destination has its relevant ad.
Campaigns are easily scalable and optimizable when needed.
Higher sales with a smaller budget.
Transparent structure – each campaign is a logically built set of destinations that is easy to analyze.
All rights reserved G-MOS | Copyright© 2025