AdXpress landing page
Getting products from the website
Create a shopping campaign
Syncing products to Google merchant center
Active product ads
Coming from small business backgrounds, we understand the challenges small retailers face in getting discovered online. Without a proven return-on-investment (ROI), they are skeptical about running online Ads across multiple social and eCommerce platforms. One of the biggest roadblocks they face is to upload and maintain a separate product feed on each ad platform (such as Google Shopping, Facebook etc.); making it technical and resource intensive. Further, constantly keeping these feeds up-to-date with the website is perpetually challenging.
Hence, we decided to build AdXpress --- a product that would help solve this challenge and let retailers focus on making creative campaigns as opposed to wasting their efforts on getting on these platforms.
What it does
AdXpress is a mobile app that automatically gets structured product information using Locogram's machine learning API directly from a retailers website. We then create platform-specific feeds with all the product attributes like price, color, size, etc and upload them automatically on to multiple platforms where the retailer wants to run Ad campaigns (Google Shopping for this hackathon). Not only that, we keep the information on merchant centers on these platforms in sync with the retailer's website, thereby mitigating the risk of their account being suspended for inconsistent information. The retailers have total control over each campaign and can also see key performance indicators like CTR and CPC to analyze the performance of their campaigns across multiple platforms all from a single place.
How we built it
We built an iPhone app, a web app and backend server for this project.
- We built the iPhone app in Objective-C using iOS SDK and Xcode.
- We built the web app in HTML5, JS and CSS using Ionic framework.
- We built the back-end server in Python using Django web framework.
- We used Locogram's machine learning API to automatically get all categories, products and structured product information from a retailer's website
- We used Google Shopping APIs to upload the product data feed on Google Merchant Center, and used Google Adwords APIs to create shopping campaigns and shopping ads on Google Adwords
Challenges we ran into
- Learning to use Google Shopping and Adwords APIs was challenging and time consuming.
- Creating test account for managing ad! Unfortunately, google doesn't let you delete your Adword account once synced!
- Configuring OAuth2 and patiently navigating their user interface and then testing our code.
- Some Ionic framework nuances.
Accomplishments that we're proud of
Our initial plan was to use Locogram's API and make a web interface. However, given the dynamic nature of these ads. we wanted to give retailers the option to manage these campaigns on the go; implying that we had to give them a mobile app instead. Looking back, this was a gamble, especially given the short amount of time. However, our entire team worked all night and we have a fully functional mobile app with quite a good UI which we are proud to showcase.
What we learned
- Google Adwords and Shopping: how to use their APIs and how to link different accounts (Merchant Center, Adwords, Console project) and their credentials!! Spent a great deal of time there.
- Relearning some old frameworks (Django)
- The fast pace learning in a hackathon!
What's next for AdXpress
On the technical side; we believe the real power of AdXpress would be in its ability to let retailers run and manage ad campaigns across multiple platforms like Facebook, Pinterest, Wanelo, Polyvore, etc. So, we will continue with our efforts to allow for integration with these platforms.
On the business side; as the first vertical, we have chosen women's clothing. Given the size of the SMB market in this segment and the rapid increase in online discoveries of stores and products, in general. Our next step will be to do market research to see if we can turn this product into a company.