Join Crawl data with Google Analytics Data
The SEO data to be analyzed often comes from different sources that why it's better to know how to connect or merge them.
Let's imagine we have crawled your website, it might be quite nice to check which one of these pages got some SEO traffic.
To do that we'll need to
merge
or join
the two "datasets" library(Rcrawler)
Rcrawler(Website = "https://www.rforseo.com/")
We now have a dataset (dataframe) of urls associated to their crawl depht called
INDEX
View(INDEX)

second column is the url
Using
googleAnalyticsR
package we grab Google Analytics SEO Landing page (see How so use googleAnalyticsR article)
# Between 1 january and 1 feb 2021
# we want the sessions
# we request landing and medium info too
# and using the anti sampling option
ga <- google_analytics(ga_id,
date_range = c("2021-01-01", "2021-02-01"),
metrics = "sessions",
dimensions = c("medium","landingPagePath"),
anti_sample = TRUE)
# We filter the data to only keep the SEO sessions
ga_seo <- ga %>% filter(medium == "organic")
First, you need to define what's the common ground. We have on the crawler data side the
Url
column and on the GA side the landingPagePath
So we need to make a conversion. We'll remove the hostname from the Url using the
path
function urltools
package. INDEX$landingPagePath <- paste0("/",urltools::path(INDEX$Url))
INDEX$landingPagePath[INDEX$landingPagePath == "/NA"] <- "/"
and now we can merge
crawl_ga_merged <- merge(INDEX,ga_seo)
That's it really. Lets display the data
View(crawl_ga_merged)
