SlideShare a Scribd company logo
1 of 64
Download to read offline
Building, hacking and killing a
bespoke CMS
Fabrizio Ballarini
@Pechnet
Link to slides
wi.se/self-driving-CMS
We started SEO program back in 2016 and built
@Pechnet
2 6 26 1712 3+M
Custom
CMS
Products People
strong
team
CountriesLanguages Indexed
Pages
What if you could build a
CMS to answer specific
clusters of queries?
@Pechnet
An out of
the box
CSM with a
couple of
SEO
features is
not enough @Pechnet@Pechnet
A high
performing
CMS is still
driven by
humans
Check out:
wi.se/seo-friendly-cms
@Pechnet
What if you
could build a
self driving
CMS?
@Pechnet@Pechnet
Context on our challenge
Build a price comparison product
Our service covers 1300+ routes and
offers 49 currencies.
There are 71 countries you can send
money to and 43 countries you can
send money from.
100+ competitors
@Pechnet
~9M URLs
Adjust to existing organisation
Remove dependencies to increase
speed of execution
We had no acquisition built into our core product
@Pechnet
Built-in acquisitionNo acquisition
Whatever is your setup keep an eye on the SEO
“DevMometer”
@Pechnet
Fresh start or migration to
new platform with prospect of
healthy collaboration
SEO team has no direct control on CMS
choice and product but has to pitch
changes to web/product team
Cms is already in place & there is
very little SEO team can change
Full stack SEO team
@Pechnet
Product
SEO Specialists
Full Stack Devs Frontend Devs Designers Copywriters
Editors
Translators
Publishers
Analysts
**Credit for all the below actually goes to them, I simply do the talk :)
Evalue growth levers
More unique pages is often the most effective
answer
0 links Wikipedia
Produce
more
content
Produce
content
hardcore
Build links
first (audit
existing
content)
Produce
content
first
0 content
Ton of
content
@Pechnet
SEO Basic: Produce, Optimise and build links
Search
Volume
CustomersCTR Conversion
Rate
WhatSEOsDO?
Produce
more
content
Optimise
existing
content
Build
links
Optimise
existing
content
Easy to
measure
and scale
Harder to
measure and
scale
Optimise
Existing
content
@Pechnet
We growth at the speed at which we ship/optimise
pages
@Pechnet
3M INDEXED PAGES 🚀
Build your fastest route to MVPs
Remove dependencies
We decided to build “Lienzo”
@Pechnet
We initially invested as less as we could in tech
@Pechnet
We didn’t port the main
Angular JS calculator to
our CMS, simply used an
iframe
All widgets are simple
text + images in a limited
number of layouts
We leverage bootstrap
of the main product for
styling and design
You can publish pages in minutes once you have
copy + creatives
@Pechnet
Added basic SEO features
Don't just give
developers
a list
of SEO features
Customize URLs
Meta data
Structured data
Canonicals and redirects
Indexing
Sitemaps
hreflang and geotargeting
Define what is must to build and what you can hack:
Our first xml sitemap after launching 1M+ URLs!
@Pechnet
Lorem 3
Put KPIs against
hacked process until
we realised we were
hitting scaling
issues and couldn’t
simply keep up.
TIme for engineers
to automate it.
Lorem 1
To save dev time we
worked harder on
building a strong
internal link structure
that bots could crawl
more efficiently.
Lorem 2
Built manually by
SEOs.
>>Dump list of URLs
from DB
>> Build static XML
sitemap
>> Upload regularly
Build itDo without Hack it
Focused on features that could help us scaling
internationally
@Pechnet
#1 Language/Country selector
#2 Unique page hreflang key
#3 Locale-mapping
Users only select language/country + unique key,
Platforms does the mapping to URL locales
@Pechnet
Language/Country selector Unique page hreflang key
Locale-mapping
Built in monitoring
@Pechnet
Everytime you press update on any page
changes get stored in your database. You
don’t need to crawl your site to find out!
Optimal backend to achieve seamless workflow
@Pechnet
Easy access to brief &
draft from writers
Automatically track
keywords via API
The Average Handling time (AHT) is normalizing. In average it takes around 15-18 days for each of the
production stages. Overall it takes us 2 - 3 months to publish an article from the moment the brief for
it is created.
We got faster at producing content but not fast
enough!
Publishing
Analyst @Pechnet
Publishing via CMS doesn’t scale, it’s constrained by number
of people in the team.
Copywriters
Editors
Translators
Publishers
Keyword Data Unique page
@Pechnet
We continue to grow linearly by publishing via
CMS
@Pechnet
The test page we quickly built proves to be successful,
time to scale it!
@Pechnet
Hack vs doing things properly
We used to hack our Database 🙈, with API it’s safer
and way more efficient
@Pechnet
1000+
new
pages
DONE!
Step 1: We plugged our CMS to Metabase Step 2: Understand template in JSON
Step 3: Edit template, concatenate JSON Step 4: Inject data in in PosgreSQL
☢
Leverage APIs
Know your CMS, your content & structure data
@Pechnet
Learn how to use APIs
@Pechnet
Understand how your CMS works:
database, data format and structure
Example: our CMS is running on a
PostgreSQL database and each page is
stored in a JSON format.
Examples for other CMS:
https://developer.wordpress.org/rest-api/
Why would we do it? (Use cases)
@Pechnet
Creating and updating landing pages manually takes time and is
prone to errors.
Create 1000s of scalable landing
pages from scratch
Update out-of-date content, or fix
broken links in scale
Delete obsolete pages Clone existing pages at scale
Scaling launches and MVPs
Use case: create 1000 new landing pages
@Pechnet
Imagine you want to create 1000 new templated landing pages - for
example to sell different types of ice cream, in multiple languages.
Each page should contain information about different aspects of ice
cream:
- Its flavour
- Price
- And list of allergens
#1: Create a template
@Pechnet
In JSON format, create template matching the API schema
and map templated fields to variables.
#2: We have prepared our list of variables
@Pechnet
Prepare the values for templated fields in a csv like this one:
#3: We wrote a simple script in python
@Pechnet
We wrote two simple python scripts:
1. To generate JSON files based on variable values and template
2. To send JSON files as a POST request to our API
#4: Test locally & execute in production 🚀
@Pechnet
$ pipenv run python api-request.py csv-filename public
After first testing the changes in a local environment, we were ready to
run the script in production:
1000+ new pages launched!
Invest in scalable widgets to achieve
feature parity with core product
Deeper integration with core product coupled
with ability to scale through CMS API 🚀
@Pechnet
🤖 APIs beat Humans
🤖
@Pechnet
👨‍🔬👩‍🔬
Kill CMS, autonomous product
We already know what we are going to build in 2 years time
2019 2020 2021 2022
Core products
Validated MVPs (waiting for dev resources) Launch new products
@Pechnet
Automate acquisition
Master the relationship between search intents and
your product variables
@Pechnet
Product variables
{Source Currency}
{Target Currency}
Example of a cluster of
queries:
“Send money to
{Target Currency}”
3 main layers that communicate with each other
@Pechnet
Backend
APIs
Frontend
Widgets
Frontend
Apps
Core
product
Quote
service
Pricing
Delivery
Estimation
Price
Comparison
Send
money
Calculator
Price
Comparison
Lienzo
(landing
page CMS)
Send
Money
Comparison
Data Collection service guides creation of landing
pages
Comparison Widget
Price Comparison
Service
Data
Collection
Service
Comparison Landing pages
@Pechnet
The product automatically generates thousand of
pages as soon as data is available
@Pechnet
Invest in product
2 years of testing….and still room for improvement!
@Pechnet
Data is the essential part of the product without
data we don’t have a product, not a 10x one.
@Pechnet
Build a 10x product that didn’t exist before
@Pechnet
Validate Acquisition Build scalable product
Launch MVP
via CMS
Scale via CMS
APIs
Launch
dedicated app
& scale via API
Improve
product
Improve
Conversion
Rate
@Pechnet
2. Develop features for SEO and scale MVPs via
CMS
@Pechnet
Start with an empowered autonomous full-stack SE0 team…
1. Build/adopt a CMS trying to eliminate
dependencies and lunch pages in seconds
3. Automate with APIs what’s successful by
investing into stand alone products
@Pechnet
Link to slides >>
wi.se/self-driving-cms
Money without borders >>
wi.se/borderless
Join us >>
wi.se/seo-jobs
Thank you

More Related Content

What's hot

PubCon, Lazarina Stoy. - Machine Learning in Search: Google's ML APIs vs Open...
PubCon, Lazarina Stoy. - Machine Learning in Search: Google's ML APIs vs Open...PubCon, Lazarina Stoy. - Machine Learning in Search: Google's ML APIs vs Open...
PubCon, Lazarina Stoy. - Machine Learning in Search: Google's ML APIs vs Open...LazarinaStoyanova
 
How Search Works
How Search WorksHow Search Works
How Search WorksAhrefs
 
Understanding Semantic Search and AI Content to Drive Growth in 2023 March 2023
Understanding Semantic Search and AI Content to Drive Growth in 2023 March 2023Understanding Semantic Search and AI Content to Drive Growth in 2023 March 2023
Understanding Semantic Search and AI Content to Drive Growth in 2023 March 2023TysonStockton1
 
EAT: Have We Been Looking At It Backwards
EAT: Have We Been Looking At It BackwardsEAT: Have We Been Looking At It Backwards
EAT: Have We Been Looking At It BackwardsEdwardZiubrzynski1
 
SEO Orientado a Resultados #DigitalZAC 2022
SEO Orientado a Resultados #DigitalZAC 2022SEO Orientado a Resultados #DigitalZAC 2022
SEO Orientado a Resultados #DigitalZAC 2022MJ Cachón Yáñez
 
Data Driven SEO на западных рынках - Виктор Карпенко
Data Driven SEO на западных рынках - Виктор КарпенкоData Driven SEO на западных рынках - Виктор Карпенко
Data Driven SEO на западных рынках - Виктор КарпенкоSeoProfy Presentations
 
Crawl Budget: Everything you Need to Know
Crawl Budget: Everything you Need to KnowCrawl Budget: Everything you Need to Know
Crawl Budget: Everything you Need to KnowSallyR7
 
How to build effective SEO teams from scratch - SMXL (Milan) 2021
How to build effective SEO teams from scratch - SMXL (Milan) 2021How to build effective SEO teams from scratch - SMXL (Milan) 2021
How to build effective SEO teams from scratch - SMXL (Milan) 2021SeoProfy Presentations
 
Content Design & its Role in SEO and Accessibility [BrightonSEO Spring 2023]
Content Design & its Role in SEO and Accessibility [BrightonSEO Spring 2023]Content Design & its Role in SEO and Accessibility [BrightonSEO Spring 2023]
Content Design & its Role in SEO and Accessibility [BrightonSEO Spring 2023]Chloe Smith
 
Rendering SEO Manifesto - Why we need to go beyond JavaScript SEO
Rendering SEO Manifesto - Why we need to go beyond JavaScript SEORendering SEO Manifesto - Why we need to go beyond JavaScript SEO
Rendering SEO Manifesto - Why we need to go beyond JavaScript SEOOnely
 
Why Scaling (Great) Content Is So Bloody Hard
Why Scaling (Great) Content Is So Bloody HardWhy Scaling (Great) Content Is So Bloody Hard
Why Scaling (Great) Content Is So Bloody HardJoshuaHardwickAhrefs
 
Can you trust AI with your content?
Can you trust AI with your content?Can you trust AI with your content?
Can you trust AI with your content?Mat Bennett
 
Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...
Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...
Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...Luis
 
How to Perform Website Experiments [+ SEJ Experiment Walk-Through & Results]
How to Perform Website Experiments [+ SEJ Experiment Walk-Through & Results]How to Perform Website Experiments [+ SEJ Experiment Walk-Through & Results]
How to Perform Website Experiments [+ SEJ Experiment Walk-Through & Results]Search Engine Journal
 
Cómo aprender (SEO) #SherpaDay
Cómo aprender (SEO) #SherpaDayCómo aprender (SEO) #SherpaDay
Cómo aprender (SEO) #SherpaDayMJ Cachón Yáñez
 
The Full Scoop on Google's Title Rewrites
The Full Scoop on Google's Title RewritesThe Full Scoop on Google's Title Rewrites
The Full Scoop on Google's Title RewritesMordy Oberstein
 
Using Search Intent in our Link Building Efforts
Using Search Intent in our Link Building EffortsUsing Search Intent in our Link Building Efforts
Using Search Intent in our Link Building EffortsChris Czermak
 
Brighton SEO July 2021 - Google Discover - optimisation, measurement, tech seo
Brighton SEO July 2021 - Google Discover - optimisation, measurement, tech seoBrighton SEO July 2021 - Google Discover - optimisation, measurement, tech seo
Brighton SEO July 2021 - Google Discover - optimisation, measurement, tech seoTom Capper
 
The State of Pagination & Infinite Scroll - BrightonSEO April 2019 - Adam Gent
The State of Pagination & Infinite Scroll - BrightonSEO   April 2019 - Adam GentThe State of Pagination & Infinite Scroll - BrightonSEO   April 2019 - Adam Gent
The State of Pagination & Infinite Scroll - BrightonSEO April 2019 - Adam GentDeepCrawl
 
Развитие SEO-проекта в casino индустрии от 0 до результата (iGaming Affiliate...
Развитие SEO-проекта в casino индустрии от 0 до результата (iGaming Affiliate...Развитие SEO-проекта в casino индустрии от 0 до результата (iGaming Affiliate...
Развитие SEO-проекта в casino индустрии от 0 до результата (iGaming Affiliate...SeoProfy Presentations
 

What's hot (20)

PubCon, Lazarina Stoy. - Machine Learning in Search: Google's ML APIs vs Open...
PubCon, Lazarina Stoy. - Machine Learning in Search: Google's ML APIs vs Open...PubCon, Lazarina Stoy. - Machine Learning in Search: Google's ML APIs vs Open...
PubCon, Lazarina Stoy. - Machine Learning in Search: Google's ML APIs vs Open...
 
How Search Works
How Search WorksHow Search Works
How Search Works
 
Understanding Semantic Search and AI Content to Drive Growth in 2023 March 2023
Understanding Semantic Search and AI Content to Drive Growth in 2023 March 2023Understanding Semantic Search and AI Content to Drive Growth in 2023 March 2023
Understanding Semantic Search and AI Content to Drive Growth in 2023 March 2023
 
EAT: Have We Been Looking At It Backwards
EAT: Have We Been Looking At It BackwardsEAT: Have We Been Looking At It Backwards
EAT: Have We Been Looking At It Backwards
 
SEO Orientado a Resultados #DigitalZAC 2022
SEO Orientado a Resultados #DigitalZAC 2022SEO Orientado a Resultados #DigitalZAC 2022
SEO Orientado a Resultados #DigitalZAC 2022
 
Data Driven SEO на западных рынках - Виктор Карпенко
Data Driven SEO на западных рынках - Виктор КарпенкоData Driven SEO на западных рынках - Виктор Карпенко
Data Driven SEO на западных рынках - Виктор Карпенко
 
Crawl Budget: Everything you Need to Know
Crawl Budget: Everything you Need to KnowCrawl Budget: Everything you Need to Know
Crawl Budget: Everything you Need to Know
 
How to build effective SEO teams from scratch - SMXL (Milan) 2021
How to build effective SEO teams from scratch - SMXL (Milan) 2021How to build effective SEO teams from scratch - SMXL (Milan) 2021
How to build effective SEO teams from scratch - SMXL (Milan) 2021
 
Content Design & its Role in SEO and Accessibility [BrightonSEO Spring 2023]
Content Design & its Role in SEO and Accessibility [BrightonSEO Spring 2023]Content Design & its Role in SEO and Accessibility [BrightonSEO Spring 2023]
Content Design & its Role in SEO and Accessibility [BrightonSEO Spring 2023]
 
Rendering SEO Manifesto - Why we need to go beyond JavaScript SEO
Rendering SEO Manifesto - Why we need to go beyond JavaScript SEORendering SEO Manifesto - Why we need to go beyond JavaScript SEO
Rendering SEO Manifesto - Why we need to go beyond JavaScript SEO
 
Why Scaling (Great) Content Is So Bloody Hard
Why Scaling (Great) Content Is So Bloody HardWhy Scaling (Great) Content Is So Bloody Hard
Why Scaling (Great) Content Is So Bloody Hard
 
Can you trust AI with your content?
Can you trust AI with your content?Can you trust AI with your content?
Can you trust AI with your content?
 
Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...
Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...
Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...
 
How to Perform Website Experiments [+ SEJ Experiment Walk-Through & Results]
How to Perform Website Experiments [+ SEJ Experiment Walk-Through & Results]How to Perform Website Experiments [+ SEJ Experiment Walk-Through & Results]
How to Perform Website Experiments [+ SEJ Experiment Walk-Through & Results]
 
Cómo aprender (SEO) #SherpaDay
Cómo aprender (SEO) #SherpaDayCómo aprender (SEO) #SherpaDay
Cómo aprender (SEO) #SherpaDay
 
The Full Scoop on Google's Title Rewrites
The Full Scoop on Google's Title RewritesThe Full Scoop on Google's Title Rewrites
The Full Scoop on Google's Title Rewrites
 
Using Search Intent in our Link Building Efforts
Using Search Intent in our Link Building EffortsUsing Search Intent in our Link Building Efforts
Using Search Intent in our Link Building Efforts
 
Brighton SEO July 2021 - Google Discover - optimisation, measurement, tech seo
Brighton SEO July 2021 - Google Discover - optimisation, measurement, tech seoBrighton SEO July 2021 - Google Discover - optimisation, measurement, tech seo
Brighton SEO July 2021 - Google Discover - optimisation, measurement, tech seo
 
The State of Pagination & Infinite Scroll - BrightonSEO April 2019 - Adam Gent
The State of Pagination & Infinite Scroll - BrightonSEO   April 2019 - Adam GentThe State of Pagination & Infinite Scroll - BrightonSEO   April 2019 - Adam Gent
The State of Pagination & Infinite Scroll - BrightonSEO April 2019 - Adam Gent
 
Развитие SEO-проекта в casino индустрии от 0 до результата (iGaming Affiliate...
Развитие SEO-проекта в casino индустрии от 0 до результата (iGaming Affiliate...Развитие SEO-проекта в casino индустрии от 0 до результата (iGaming Affiliate...
Развитие SEO-проекта в casino индустрии от 0 до результата (iGaming Affiliate...
 

Similar to Building, hacking and killing a bespoke CMS - Search Leeds 19

Continental Airlines 2009 Microsoft SharePoint Conference Presentation
Continental Airlines 2009 Microsoft SharePoint Conference PresentationContinental Airlines 2009 Microsoft SharePoint Conference Presentation
Continental Airlines 2009 Microsoft SharePoint Conference PresentationDenise Wilson
 
Sharepoint conference 3 - continental
Sharepoint conference 3 - continentalSharepoint conference 3 - continental
Sharepoint conference 3 - continentalMIchael Carey
 
Introducing the Hub for Data Orchestration
Introducing the Hub for Data OrchestrationIntroducing the Hub for Data Orchestration
Introducing the Hub for Data OrchestrationAlluxio, Inc.
 
ERICGil_Updated-2
ERICGil_Updated-2ERICGil_Updated-2
ERICGil_Updated-2eric gil
 
DevOps Loop - Jeffrey Hammond.pptx.pdf
DevOps Loop - Jeffrey Hammond.pptx.pdfDevOps Loop - Jeffrey Hammond.pptx.pdf
DevOps Loop - Jeffrey Hammond.pptx.pdfVMware Tanzu
 
How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi...
 How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi... How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi...
How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi...Aimore Technologies
 
How to build and deploy app on Replit
How to build and deploy app on ReplitHow to build and deploy app on Replit
How to build and deploy app on Replitmatiasfund
 
Kentico Cloud and .NET Core - A Winning Combination
Kentico Cloud and .NET Core - A Winning CombinationKentico Cloud and .NET Core - A Winning Combination
Kentico Cloud and .NET Core - A Winning CombinationJeroen Fürst
 
Headless WooCommerce - Harnessing the Power of Headless CMS with WooCommerce.pdf
Headless WooCommerce - Harnessing the Power of Headless CMS with WooCommerce.pdfHeadless WooCommerce - Harnessing the Power of Headless CMS with WooCommerce.pdf
Headless WooCommerce - Harnessing the Power of Headless CMS with WooCommerce.pdfElsner Technologies Pvt. Ltd.
 
Proper Connections Development for Proper Domino Developers
Proper Connections Development for Proper Domino DevelopersProper Connections Development for Proper Domino Developers
Proper Connections Development for Proper Domino DevelopersMark Myers
 
Role of CMS & Webservices - Mobile Apps
Role of CMS & Webservices - Mobile AppsRole of CMS & Webservices - Mobile Apps
Role of CMS & Webservices - Mobile AppsDivya Jyot
 

Similar to Building, hacking and killing a bespoke CMS - Search Leeds 19 (20)

Continental Airlines 2009 Microsoft SharePoint Conference Presentation
Continental Airlines 2009 Microsoft SharePoint Conference PresentationContinental Airlines 2009 Microsoft SharePoint Conference Presentation
Continental Airlines 2009 Microsoft SharePoint Conference Presentation
 
Sharepoint conference 3 - continental
Sharepoint conference 3 - continentalSharepoint conference 3 - continental
Sharepoint conference 3 - continental
 
Introducing the Hub for Data Orchestration
Introducing the Hub for Data OrchestrationIntroducing the Hub for Data Orchestration
Introducing the Hub for Data Orchestration
 
ERICGil_Updated-2
ERICGil_Updated-2ERICGil_Updated-2
ERICGil_Updated-2
 
Open Source CMS vs. SharePoint
Open Source CMS vs. SharePointOpen Source CMS vs. SharePoint
Open Source CMS vs. SharePoint
 
DevOps Loop - Jeffrey Hammond.pptx.pdf
DevOps Loop - Jeffrey Hammond.pptx.pdfDevOps Loop - Jeffrey Hammond.pptx.pdf
DevOps Loop - Jeffrey Hammond.pptx.pdf
 
How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi...
 How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi... How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi...
How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi...
 
How to build and deploy app on Replit
How to build and deploy app on ReplitHow to build and deploy app on Replit
How to build and deploy app on Replit
 
E pi server
E pi serverE pi server
E pi server
 
Pronobesh resume
Pronobesh resumePronobesh resume
Pronobesh resume
 
Kentico Cloud and .NET Core - A Winning Combination
Kentico Cloud and .NET Core - A Winning CombinationKentico Cloud and .NET Core - A Winning Combination
Kentico Cloud and .NET Core - A Winning Combination
 
Pronobesh_Resume
Pronobesh_ResumePronobesh_Resume
Pronobesh_Resume
 
Cake Php Consultant
Cake Php ConsultantCake Php Consultant
Cake Php Consultant
 
myresume_latest
myresume_latestmyresume_latest
myresume_latest
 
A Complete Guide to Python Web Development
A Complete Guide to Python Web DevelopmentA Complete Guide to Python Web Development
A Complete Guide to Python Web Development
 
Headless WooCommerce - Harnessing the Power of Headless CMS with WooCommerce.pdf
Headless WooCommerce - Harnessing the Power of Headless CMS with WooCommerce.pdfHeadless WooCommerce - Harnessing the Power of Headless CMS with WooCommerce.pdf
Headless WooCommerce - Harnessing the Power of Headless CMS with WooCommerce.pdf
 
Proper Connections Development for Proper Domino Developers
Proper Connections Development for Proper Domino DevelopersProper Connections Development for Proper Domino Developers
Proper Connections Development for Proper Domino Developers
 
Dipen shah
Dipen shahDipen shah
Dipen shah
 
ppt of MANOJ KUMAR.pptx
ppt of MANOJ KUMAR.pptxppt of MANOJ KUMAR.pptx
ppt of MANOJ KUMAR.pptx
 
Role of CMS & Webservices - Mobile Apps
Role of CMS & Webservices - Mobile AppsRole of CMS & Webservices - Mobile Apps
Role of CMS & Webservices - Mobile Apps
 

Recently uploaded

The Science of Landing Page Messaging.pdf
The Science of Landing Page Messaging.pdfThe Science of Landing Page Messaging.pdf
The Science of Landing Page Messaging.pdfVWO
 
Labour Day Celebrating Workers and Their Contributions.pptx
Labour Day Celebrating Workers and Their Contributions.pptxLabour Day Celebrating Workers and Their Contributions.pptx
Labour Day Celebrating Workers and Their Contributions.pptxelizabethella096
 
Enjoy Night⚡Call Girls Dlf City Phase 4 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 4 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 4 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 4 Gurgaon >༒8448380779 Escort ServiceDelhi Call girls
 
How to Leverage Behavioral Science Insights for Direct Mail Success
How to Leverage Behavioral Science Insights for Direct Mail SuccessHow to Leverage Behavioral Science Insights for Direct Mail Success
How to Leverage Behavioral Science Insights for Direct Mail SuccessAggregage
 
Factors-Influencing-Branding-Strategies.pptx
Factors-Influencing-Branding-Strategies.pptxFactors-Influencing-Branding-Strategies.pptx
Factors-Influencing-Branding-Strategies.pptxVikasTiwari846641
 
Major SEO Trends in 2024 - Banyanbrain Digital
Major SEO Trends in 2024 - Banyanbrain DigitalMajor SEO Trends in 2024 - Banyanbrain Digital
Major SEO Trends in 2024 - Banyanbrain DigitalBanyanbrain
 
Digital-Marketing-Into-by-Zoraiz-Ahmad.pptx
Digital-Marketing-Into-by-Zoraiz-Ahmad.pptxDigital-Marketing-Into-by-Zoraiz-Ahmad.pptx
Digital-Marketing-Into-by-Zoraiz-Ahmad.pptxZACGaming
 
Brighton SEO April 2024 - The Good, the Bad & the Ugly of SEO Success
Brighton SEO April 2024 - The Good, the Bad & the Ugly of SEO SuccessBrighton SEO April 2024 - The Good, the Bad & the Ugly of SEO Success
Brighton SEO April 2024 - The Good, the Bad & the Ugly of SEO SuccessVarn
 
How to utilize calculated properties in your HubSpot setups
How to utilize calculated properties in your HubSpot setupsHow to utilize calculated properties in your HubSpot setups
How to utilize calculated properties in your HubSpot setupsssuser4571da
 
Google 3rd-Party Cookie Deprecation [Update] + 5 Best Strategies
Google 3rd-Party Cookie Deprecation [Update] + 5 Best StrategiesGoogle 3rd-Party Cookie Deprecation [Update] + 5 Best Strategies
Google 3rd-Party Cookie Deprecation [Update] + 5 Best StrategiesSearch Engine Journal
 
Defining Marketing for the 21st Century,kotler
Defining Marketing for the 21st Century,kotlerDefining Marketing for the 21st Century,kotler
Defining Marketing for the 21st Century,kotlerAmirNasiruog
 
The+State+of+Careers+In+Retention+Marketing-2.pdf
The+State+of+Careers+In+Retention+Marketing-2.pdfThe+State+of+Careers+In+Retention+Marketing-2.pdf
The+State+of+Careers+In+Retention+Marketing-2.pdfSocial Samosa
 
BDSM⚡Call Girls in Sector 150 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 150 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 150 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 150 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Developing Marketing Strategies and Plans kotler
Developing Marketing Strategies and Plans kotlerDeveloping Marketing Strategies and Plans kotler
Developing Marketing Strategies and Plans kotlerAmirNasiruog
 
Brand experience Peoria City Soccer Presentation.pdf
Brand experience Peoria City Soccer Presentation.pdfBrand experience Peoria City Soccer Presentation.pdf
Brand experience Peoria City Soccer Presentation.pdftbatkhuu1
 

Recently uploaded (20)

Foundation First - Why Your Website and Content Matters - David Pisarek
Foundation First - Why Your Website and Content Matters - David PisarekFoundation First - Why Your Website and Content Matters - David Pisarek
Foundation First - Why Your Website and Content Matters - David Pisarek
 
The Science of Landing Page Messaging.pdf
The Science of Landing Page Messaging.pdfThe Science of Landing Page Messaging.pdf
The Science of Landing Page Messaging.pdf
 
Labour Day Celebrating Workers and Their Contributions.pptx
Labour Day Celebrating Workers and Their Contributions.pptxLabour Day Celebrating Workers and Their Contributions.pptx
Labour Day Celebrating Workers and Their Contributions.pptx
 
No Cookies No Problem - Steve Krull, Be Found Online
No Cookies No Problem - Steve Krull, Be Found OnlineNo Cookies No Problem - Steve Krull, Be Found Online
No Cookies No Problem - Steve Krull, Be Found Online
 
Enjoy Night⚡Call Girls Dlf City Phase 4 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 4 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 4 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 4 Gurgaon >༒8448380779 Escort Service
 
How to Leverage Behavioral Science Insights for Direct Mail Success
How to Leverage Behavioral Science Insights for Direct Mail SuccessHow to Leverage Behavioral Science Insights for Direct Mail Success
How to Leverage Behavioral Science Insights for Direct Mail Success
 
Factors-Influencing-Branding-Strategies.pptx
Factors-Influencing-Branding-Strategies.pptxFactors-Influencing-Branding-Strategies.pptx
Factors-Influencing-Branding-Strategies.pptx
 
How to Create a Social Media Plan Like a Pro - Jordan Scheltgen
How to Create a Social Media Plan Like a Pro - Jordan ScheltgenHow to Create a Social Media Plan Like a Pro - Jordan Scheltgen
How to Create a Social Media Plan Like a Pro - Jordan Scheltgen
 
Major SEO Trends in 2024 - Banyanbrain Digital
Major SEO Trends in 2024 - Banyanbrain DigitalMajor SEO Trends in 2024 - Banyanbrain Digital
Major SEO Trends in 2024 - Banyanbrain Digital
 
Digital-Marketing-Into-by-Zoraiz-Ahmad.pptx
Digital-Marketing-Into-by-Zoraiz-Ahmad.pptxDigital-Marketing-Into-by-Zoraiz-Ahmad.pptx
Digital-Marketing-Into-by-Zoraiz-Ahmad.pptx
 
SEO Master Class - Steve Wiideman, Wiideman Consulting Group
SEO Master Class - Steve Wiideman, Wiideman Consulting GroupSEO Master Class - Steve Wiideman, Wiideman Consulting Group
SEO Master Class - Steve Wiideman, Wiideman Consulting Group
 
Brighton SEO April 2024 - The Good, the Bad & the Ugly of SEO Success
Brighton SEO April 2024 - The Good, the Bad & the Ugly of SEO SuccessBrighton SEO April 2024 - The Good, the Bad & the Ugly of SEO Success
Brighton SEO April 2024 - The Good, the Bad & the Ugly of SEO Success
 
How to utilize calculated properties in your HubSpot setups
How to utilize calculated properties in your HubSpot setupsHow to utilize calculated properties in your HubSpot setups
How to utilize calculated properties in your HubSpot setups
 
Creator Influencer Strategy Master Class - Corinne Rose Guirgis
Creator Influencer Strategy Master Class - Corinne Rose GuirgisCreator Influencer Strategy Master Class - Corinne Rose Guirgis
Creator Influencer Strategy Master Class - Corinne Rose Guirgis
 
Google 3rd-Party Cookie Deprecation [Update] + 5 Best Strategies
Google 3rd-Party Cookie Deprecation [Update] + 5 Best StrategiesGoogle 3rd-Party Cookie Deprecation [Update] + 5 Best Strategies
Google 3rd-Party Cookie Deprecation [Update] + 5 Best Strategies
 
Defining Marketing for the 21st Century,kotler
Defining Marketing for the 21st Century,kotlerDefining Marketing for the 21st Century,kotler
Defining Marketing for the 21st Century,kotler
 
The+State+of+Careers+In+Retention+Marketing-2.pdf
The+State+of+Careers+In+Retention+Marketing-2.pdfThe+State+of+Careers+In+Retention+Marketing-2.pdf
The+State+of+Careers+In+Retention+Marketing-2.pdf
 
BDSM⚡Call Girls in Sector 150 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 150 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 150 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 150 Noida Escorts >༒8448380779 Escort Service
 
Developing Marketing Strategies and Plans kotler
Developing Marketing Strategies and Plans kotlerDeveloping Marketing Strategies and Plans kotler
Developing Marketing Strategies and Plans kotler
 
Brand experience Peoria City Soccer Presentation.pdf
Brand experience Peoria City Soccer Presentation.pdfBrand experience Peoria City Soccer Presentation.pdf
Brand experience Peoria City Soccer Presentation.pdf
 

Building, hacking and killing a bespoke CMS - Search Leeds 19

  • 1. Building, hacking and killing a bespoke CMS Fabrizio Ballarini
  • 3. We started SEO program back in 2016 and built @Pechnet 2 6 26 1712 3+M Custom CMS Products People strong team CountriesLanguages Indexed Pages
  • 4. What if you could build a CMS to answer specific clusters of queries? @Pechnet
  • 5. An out of the box CSM with a couple of SEO features is not enough @Pechnet@Pechnet
  • 6. A high performing CMS is still driven by humans Check out: wi.se/seo-friendly-cms @Pechnet
  • 7. What if you could build a self driving CMS? @Pechnet@Pechnet
  • 8. Context on our challenge
  • 9. Build a price comparison product
  • 10. Our service covers 1300+ routes and offers 49 currencies. There are 71 countries you can send money to and 43 countries you can send money from. 100+ competitors @Pechnet
  • 12. Adjust to existing organisation Remove dependencies to increase speed of execution
  • 13. We had no acquisition built into our core product @Pechnet Built-in acquisitionNo acquisition
  • 14. Whatever is your setup keep an eye on the SEO “DevMometer” @Pechnet Fresh start or migration to new platform with prospect of healthy collaboration SEO team has no direct control on CMS choice and product but has to pitch changes to web/product team Cms is already in place & there is very little SEO team can change
  • 15. Full stack SEO team @Pechnet Product SEO Specialists Full Stack Devs Frontend Devs Designers Copywriters Editors Translators Publishers Analysts **Credit for all the below actually goes to them, I simply do the talk :)
  • 17. More unique pages is often the most effective answer 0 links Wikipedia Produce more content Produce content hardcore Build links first (audit existing content) Produce content first 0 content Ton of content @Pechnet
  • 18. SEO Basic: Produce, Optimise and build links Search Volume CustomersCTR Conversion Rate WhatSEOsDO? Produce more content Optimise existing content Build links Optimise existing content Easy to measure and scale Harder to measure and scale Optimise Existing content @Pechnet
  • 19. We growth at the speed at which we ship/optimise pages @Pechnet 3M INDEXED PAGES 🚀
  • 20. Build your fastest route to MVPs
  • 22. We decided to build “Lienzo” @Pechnet
  • 23. We initially invested as less as we could in tech @Pechnet We didn’t port the main Angular JS calculator to our CMS, simply used an iframe All widgets are simple text + images in a limited number of layouts We leverage bootstrap of the main product for styling and design
  • 24. You can publish pages in minutes once you have copy + creatives @Pechnet
  • 25. Added basic SEO features
  • 26. Don't just give developers a list of SEO features Customize URLs Meta data Structured data Canonicals and redirects Indexing Sitemaps hreflang and geotargeting
  • 27. Define what is must to build and what you can hack: Our first xml sitemap after launching 1M+ URLs! @Pechnet Lorem 3 Put KPIs against hacked process until we realised we were hitting scaling issues and couldn’t simply keep up. TIme for engineers to automate it. Lorem 1 To save dev time we worked harder on building a strong internal link structure that bots could crawl more efficiently. Lorem 2 Built manually by SEOs. >>Dump list of URLs from DB >> Build static XML sitemap >> Upload regularly Build itDo without Hack it
  • 28. Focused on features that could help us scaling internationally @Pechnet #1 Language/Country selector #2 Unique page hreflang key #3 Locale-mapping
  • 29. Users only select language/country + unique key, Platforms does the mapping to URL locales @Pechnet Language/Country selector Unique page hreflang key Locale-mapping
  • 30. Built in monitoring @Pechnet Everytime you press update on any page changes get stored in your database. You don’t need to crawl your site to find out!
  • 31. Optimal backend to achieve seamless workflow @Pechnet Easy access to brief & draft from writers Automatically track keywords via API
  • 32. The Average Handling time (AHT) is normalizing. In average it takes around 15-18 days for each of the production stages. Overall it takes us 2 - 3 months to publish an article from the moment the brief for it is created. We got faster at producing content but not fast enough! Publishing Analyst @Pechnet
  • 33. Publishing via CMS doesn’t scale, it’s constrained by number of people in the team. Copywriters Editors Translators Publishers Keyword Data Unique page @Pechnet
  • 34. We continue to grow linearly by publishing via CMS @Pechnet
  • 35. The test page we quickly built proves to be successful, time to scale it! @Pechnet
  • 36. Hack vs doing things properly
  • 37. We used to hack our Database 🙈, with API it’s safer and way more efficient @Pechnet 1000+ new pages DONE! Step 1: We plugged our CMS to Metabase Step 2: Understand template in JSON Step 3: Edit template, concatenate JSON Step 4: Inject data in in PosgreSQL ☢
  • 39. Know your CMS, your content & structure data @Pechnet
  • 40. Learn how to use APIs @Pechnet Understand how your CMS works: database, data format and structure Example: our CMS is running on a PostgreSQL database and each page is stored in a JSON format. Examples for other CMS: https://developer.wordpress.org/rest-api/
  • 41. Why would we do it? (Use cases) @Pechnet Creating and updating landing pages manually takes time and is prone to errors. Create 1000s of scalable landing pages from scratch Update out-of-date content, or fix broken links in scale Delete obsolete pages Clone existing pages at scale
  • 43. Use case: create 1000 new landing pages @Pechnet Imagine you want to create 1000 new templated landing pages - for example to sell different types of ice cream, in multiple languages. Each page should contain information about different aspects of ice cream: - Its flavour - Price - And list of allergens
  • 44. #1: Create a template @Pechnet In JSON format, create template matching the API schema and map templated fields to variables.
  • 45. #2: We have prepared our list of variables @Pechnet Prepare the values for templated fields in a csv like this one:
  • 46. #3: We wrote a simple script in python @Pechnet We wrote two simple python scripts: 1. To generate JSON files based on variable values and template 2. To send JSON files as a POST request to our API
  • 47. #4: Test locally & execute in production 🚀 @Pechnet $ pipenv run python api-request.py csv-filename public After first testing the changes in a local environment, we were ready to run the script in production: 1000+ new pages launched!
  • 48. Invest in scalable widgets to achieve feature parity with core product
  • 49. Deeper integration with core product coupled with ability to scale through CMS API 🚀 @Pechnet
  • 50. 🤖 APIs beat Humans 🤖 @Pechnet 👨‍🔬👩‍🔬
  • 52. We already know what we are going to build in 2 years time 2019 2020 2021 2022 Core products Validated MVPs (waiting for dev resources) Launch new products @Pechnet
  • 54. Master the relationship between search intents and your product variables @Pechnet Product variables {Source Currency} {Target Currency} Example of a cluster of queries: “Send money to {Target Currency}”
  • 55. 3 main layers that communicate with each other @Pechnet Backend APIs Frontend Widgets Frontend Apps Core product Quote service Pricing Delivery Estimation Price Comparison Send money Calculator Price Comparison Lienzo (landing page CMS) Send Money Comparison
  • 56. Data Collection service guides creation of landing pages Comparison Widget Price Comparison Service Data Collection Service Comparison Landing pages @Pechnet
  • 57. The product automatically generates thousand of pages as soon as data is available @Pechnet
  • 59. 2 years of testing….and still room for improvement! @Pechnet
  • 60. Data is the essential part of the product without data we don’t have a product, not a 10x one. @Pechnet
  • 61. Build a 10x product that didn’t exist before @Pechnet
  • 62. Validate Acquisition Build scalable product Launch MVP via CMS Scale via CMS APIs Launch dedicated app & scale via API Improve product Improve Conversion Rate @Pechnet
  • 63. 2. Develop features for SEO and scale MVPs via CMS @Pechnet Start with an empowered autonomous full-stack SE0 team… 1. Build/adopt a CMS trying to eliminate dependencies and lunch pages in seconds 3. Automate with APIs what’s successful by investing into stand alone products
  • 64. @Pechnet Link to slides >> wi.se/self-driving-cms Money without borders >> wi.se/borderless Join us >> wi.se/seo-jobs Thank you