A collection of recent articles by Lukas Oldenburg, Owner of dim28.
see the articlesPros and Cons of Meta Sites
Our reporting hamster, a Piwik Pro client with multiple sites, has to answer a difficult question: Do we go with a Meta Site setup or not? Meta Sites are a powerful feature to aggregate multiple sites in one (Analytics) or centralize element management (Tag Manager). But there are trade-offs (e.g., deduplication challenges in Analytics or transparency in Tag Manager) which can be showstoppers or just minor footnotes, depending on your use case. This post summarizes the pros and cons for Analytics and Tag Manager and offers a compromise.
Why Search Channels need to be split up to mean anything at all
Back to basics: What is a sensible Marketing Channel (aka “Channel Group”) setup in your Web Analytics tool? A frequent mistake is treating Paid Search traffic as one single Channel. Why that might be in your agency’s best interest. And why the same applies for Organic Search.
Your Data Quality Frameworks starts here
My daily routine could not be more boring: It starts with checking Alerts. Some of the most important messages are the ones coming from Adobe Analytics. But how can you ensure Alerts stay relevant? How do you create Alerts in bulk efficiently? How do you avoid Alert e-mail floods? Should you use a lot of Hourly Alerts? And what's the best significance threshold?
Including a Video Demo
Firestore is great for handling application logic, BigQuery is great for data analysis. The third episode of my series with Firestore tips shows a convenient way to get both.
Easily keep tab on relevant changes to your data
This year has been my ten-year anniversary with Adobe Analytics. For all those years, there was always one thing I wanted. But I was always too lazy to get it done. It was something rather primitive.
A look at substitutes for Data Warehouse, Data Feeds, Alerts, User Stitching, Analytics 4 Target, and more
Have you delved into Customer Journey Analytics (CJA) yet? I finally did this year. And I discovered plenty to admire — but also some obstacles that Adobe should tackle before I’d migrate clients from Adobe Analytics (AA) to CJA. Curious about the highlights and challenges? Here’s my personal rundown.
A couple of months ago, Adobe migrated the Bot Reports to the Analysis Workspace interface. Maybe they also updated some of the Bot Filtering logic since then, because the number of Bots identified seems higher than in the past, maybe it is just another real Bot rush.
How to securely update keys and increment numbers “atomically”
Imagine two people writing a message on the same piece of paper, at the same time, without seeing each other’s message until after they are done. The outcome will likely be an illegible mix. Similar things can happen in Firestore if you don’t handle concurrent document updates properly. The second episode of my series with Firestore tips helps you with that.
Plus: Why going against the alphabet makes queries easier
Long before Firestore made it into the toolkit of Google Tag Manager’s Server-Side offering, it was a powerful document database. Working with Firestore for some years now, I want to share simple tips that may help you avoid the same mistakes I made. First though, I will compare Firestore with classical SQL-style databases.
From “Anonymous Tracking Mode” to Session ID (now “Session Hash”), and: Can you actually track with a Session Cookie only?
The original aim: Track users with only one Session Cookie to comply with certain GDPR interpretations. That started an intriguing journey through the various privacy mechanisms of Piwik Pro. What is “anonymous” about the “Anonymous Tracking Mode”? What is the difference between the Session ID and the Session Cookie? And does Piwik Pro do fingerprinting?
When you need to wait, you better know for how long
What do you do when your AB testing tool starts delivering experiments a second later? Nothing. Because you likely won’t notice. Why you need to monitor the services your web analytics depends on. Real examples!
In part I, I look at examples why it is important to measure the performance of services your Analytics tracking depends on.
In part II, I show how to implement that. Do you have my must-have performance metric in your tracking setup?
Let’s talk about Feelings
Who came up with the nonsense that we should decide based on data, not emotions?! Not me! I am fully emotional in all my decisions, and the same holds true for this tool comparison: The only criterion is my emotional state while using GA4, Adobe Analytics, and Piwik Pro — three solutions that couldn’t be more distinct when it comes to feelings…
Losing Weight — A Pruning Diet for your Overweight Adobe Analytics Segments
Every Analytics account has them: Giant, important segments (e.g. for Bot Exclusion) that have become unmaintainable. They are a drag on performance, they cause mistrust in data, and nobody wants to touch them because they are so complex.
In part I, I investigate the maintenance burden of such segments, and how they grow into such unmaintainable Goliaths in the first place. We put this knowledge into practice in part II and get our hands dirty with lots of Python and the API, rebuilding the "Segment Pruner", a function of the Adobe Analytics Component Manager for Google Sheets, on our own computer. In the end, our winning smallest possible, non-data-changing segment alternative will get some fancy Capitalist prizes. ;)
… withOUT writing a single IT ticket
Adobe Analytics has a great analysis interface. But getting reports out of Adobe Analytics into a dashboarding solution like Google Looker Studio or even a Google Sheet was so far impossible without some tech-heavy process in-between (or expensive).
And why Matomo didn’t make the cut
Part 1 tells about a client that was unhappy with the limitations of Google Analytics 4 and finally looked at other options and decided to test-drive Piwik Pro. But why not Matomo?
Part 2 answers questions: How did Piwik Pro fare in the POC? How easy was the implementation via GTM, how smooth the integrations with Google Ads, Search Console, and Looker Studio? What about the data quality? Where should Piwik Pro improve? And which tool did the client choose finally?
An eVar, Classification Rule Builder, RegExp Extractions — and “Combo Hierarchies”
My great late grandfather often lamented that today’s youth has no more respect for hierarchies. Adobe Analytics has caught up to that trend and retires the good old “Hierarchy” variable. This post shows how you can migrate it to an eVar or prop. And if you have not done any content-hierarchy-level-focused analysis yet, I will set you up for that as well. Bonus: the powerful “Combo Hierarchy” dimensions.
We are not really in an “Age of User-Centric Analytics” yet — rather the Opposite
Especially since the advent of Google Analytics 4, I have been hearing the argument ever more frequently: Sessions have become irrelevant. We are in an age of “user-centric” Analytics. Not really. But what would be the ideal measurement time frame?
Account usage and Workspace stats, editing eVars, props, Succcess Events are now free
Cleaning up Adobe Analytics components and workspaces in a data-driven manner, keeping an eye on login & workspace viewing trends over time, managing multiple Virtual Report Suites’ Curated Components in an efficient manner, harmonizing duplicate segments & calculated metrics, replacing a dimension, segment or metric by another one everywhere — many Admins save hundreds of hours with the Adobe Analytics Component Manager for Google Sheets already.
Why creating or modifying Events via the GA4 Admin section should only be last resort
Recently, I got to spend some time with some really nice Digital Analysts from one of those Google-only monolith agencies. At some point, we got to the topic of vendor tunnel blindness — when you are sticking to your current vendor, not looking left or right, as if there were no other options. While this phenomenon is strong in both the Google and the Adobe tunnel, the recent Google Analytics 4 tunnel blindness is particularly striking: Even though many are hating on GA4, relatively few seem to seriously consider other tools; most even treat the migration to GA4 like something prescribed by the laws of nature.
The Long Journey around the UnicodeDecodeError
Adobe Analytics Clickstream (Raw Data) Feeds can be highly useful, but getting started with them can turn out a bit cumbersome. Especially complex is the treatment of non-ASCII characters (äöüßéàê“” etc.). If you try to open a file that has such a character in the wrong spot with Python’s popular pandas library, you will get a breaking error. Luckily, there are (undocumented) workarounds.
“Analytics Tea Break” shows little Digital Analytics tips & tricks. Reading them should take no longer than your average tea/coffee/cigarette break.
The classic Adobe Analytics implementation has some concepts that need some practice to get used to. Some of them can be discarded altogether and make your implementation a lot easier. My favorite: linkTrackVars and linkTrackEvents. I would bet that anybody who has done an AA implementation has had bugs because of them. Even though they are completely unnecessary!
Automated Client- and Server-Side QA of Data Collection
The futile (?) dream of many Digital Analytics/Tag Management/Data Collection specialists: a tracking implementation where every measurement point in any technical constellation is automatically validated against non-trivial, up-to-date rules and serves you errors on an actionable silver plate: Perfect, automated QA of data collection (aka “tracking”). There are good solutions, but they are limited, and they focus on the less relevant (part 1).
We show a solution that does (almost) all the things I want a data collection QA solution to do, and it does so without requiring licensing fees (apart from a couple of dollars monthly on Google Cloud Platform). We use Mocha & Chai for visual client-side ad-hoc data validation (part 2) and then take the whole thing server-side in a scalable way so every user becomes a data layer tester (part 3).
How to replace components everywhere and harmonize your duplicate segments & metrics along the way
How to harmonize duplicate segments or metrics and retire deprecated dimensions for good by replacing Adobe Analytics components in any workspace, segment or calculated metric definition — with a few clicks.
From Real-Time Multi-ID User Stitching to Triggering Flexible Actions
The number of vendors claiming to offer a Customer Data Platform (CDP) has skyrocketed. From e-mail specialists to tag management providers — as long as a product used to offer something with customer data and had some APIs for data input and output, it now is likely called a “CDP”. The CDP Institute’s “Vendor Comparison” lists 53 solutions alone! Let’s try to define a CDP and look at its most important components.
Heavenly and Devilish Examples of Server-Side Tracking
Server-side tracking, especially in the form of server-side Tag Management, is one of the hottest trends in Digital Analytics and Marketing. This article gives an introduction and highlights the potential for good and bad. And when did “first-party data” mutate into an irony of itself?
How to Measure User Adoption of your Adobe Analytics Setup and Prevent Co-Workers from Churning
Am I doing a good job in terms of user adoption of Adobe Analytics at my organization? Which co-workers are starting to lose interest? Which ones are emerging Power Users? Which data topics deserve more attention, i.e. enhanced reporting & tracking? Part 1 of this article reviews account logs, their issues and shows 3 key reports Admins should focus on.
The account usage logs of Adobe Analytics offer a lot of cool data to monitor if the Digital Analytics team is doing their job. However, they are not without pitfalls. A Project View may not be what you think it is. How fresh is the data? And how do you deal with the different logging languages? A checklist and some code examples in the Part 2 should help.
From Filtering out Bots to Filtering in Humans
This is the never-ending story in 2 acts on how to deal with Bots in your Google or Adobe Analytics data.
In part 1, I review common, yet usually insufficient or even completely failing approaches. Why did I give up on AI-driven solutions like ReCaptcha, Akamai Bot Manager or Ad Fraud Detection tools? How good are the built-in Bot Filters? Should you at least maintain Bot Filters/Segments on top of GA views/AA Virtual Report Suites? Why does Server-Side Tracking exacerbate the Bot issues?
In part 2, I look at a client who saw Bot Traffic surging to over 40%, a case which made me reconsider entirely how to approach Bot Filtering. We show a 2-layered system which turns traditional approaches upside dow - instead of filtering out Bots, the focus is on filtering in humans.
Also: Check out the video of our presentation (together with David Hermann) at Superweek 2023 on the topic.
How to use Server-Side GTM + Pubsub + Python + Firestore to get attributes from a database about a User, Products, or anything
I show (including code examples) how you can use Server-Side Google Tag Manager to enrich client-side data (e.g. from a data layer) by querying a database on the Google Cloud Platform in real-time and returning the output to the (server or browser) client. It uses Cloud Functions, Template Data Storage for Caching and PubSub to generate asynchronous responses. You can of course query any other data in similar fashion, e.g. sensitive product data (e.g. profit margins) or anything else.
Merge duplicate segments and calculated metrics, delete unused components, and get rid of those thousands of old workspaces
Thanks to the Adobe Analytics API, you can finally get your Analytics setup back under control and put an end to user (and admin) frustration because of seemingly endless lists of components with similar names, duplicates etc.
The Component Usage Tab in the Google Sheets Adobe Analytics Bulk Component Editor shows what your users (don’t) use
Some months ago, I presented my new pet tool, the Adobe Analytics Bulk Component Editor for Google Sheets. In this video/article, I present an update: There is now a “Component Usage” Tab which shows you not only all Components, i.e. Calculated Metrics, Success Events, Segments, Dimensions or Date Ranges.
What you need for developing Custom Launch Extensions
In the third part of “Life with Adobe Launch”, I look at the entry bar for developing a Custom Launch Extension in terms of skills and structure. Tag Management specialists tend to have some development skills, but rarely work in the same environments nor with the tools that full-stack developers do. Developing a Launch Extension changes that: You have to learn how to work with the tools of today’s professional developers. Thus, the entry bar may be high. It was for me. But I don’t regret it and learned so many useful things along the way.
How to ensure a centralized and scalable data collection standard across websites with a Launch Company Extension
Part I covered the rocky history of Adobe Tag Management Systems (TMS). It also showed that Launch still has many of the scaling issues of its predecessor Dynamic Tag Management (DTM). Fortunately, Launch offers a way out: Custom Extensions. So if you have multiple sites and want them to adhere to a common tracking standard, such an Extension is a must. Otherwise: innovation freeze and data quality disaster.
Shining at the fancy things while failing at scaling
As amazing as Adobe is in Analytics, as inglorious is Adobe’s history with Tag Management Systems. Launch is the 3rd TMS in 6 years. After the failed “Adobe Tag Manager”, Adobe “DTM” did the fancy, unimportant things well, but choked at what is most important, especially for large enterprises: scale. Launch still has many of these same problems, but offers solutions now.
In I looked back at my first steps in self-employment. In this part, I compare today with my initial plans and summarize why things went well — and the one thing that is at the root of all my failures. Also, some thoughts on why it is hard to find out “the truth” on the Googles and Adobes out there.
Read Full article on mediumGet ready for the attack by the dangerous and risky free market!
Becoming self-employed was quite a change, especially for someone as risk-averse as myself. More than two years later, I look back — and forward. And maybe help you whether self-employment is something you should consider.
Add or remove components from multiple Virtual Report Suites at once, changing (curated or default) names and descriptions of components — all in a simple Google Sheet and with a click of a button, outside the tedious Adobe Analytics Admin interface.
One of the first things a Digital Analyst learns is how to ask “what are we counting exactly?” Visits? Hits? Visitors? Visits with Search? Visits from First-Time Visitors? The answer is often not obvious at all, and some tools only offer very limited counting methods. In Adobe Analytics at least, it is very easy to make things count the way they should. This video shows how.
And why Adobe’s Product Management should not forget this
No data siloes, powerful segment-based metrics that work for both product- and non-product dimensions, product-specific attribution, offline data enrichments, all in an intuitive drag-and-drop interface that requires no tech skills to work with — why I think Adobe has the best offer for E-Commerce Analytics.
How “Runner” and “Bummer” scores rank products and make simple reports actionable.
Data protection is like #blacklivesmatter: In public, everyone jumps on the bandwagon. In practice, things look different.
Wenn immer mehr, aber immer weniger nützliche Daten lähmen — was wir aus dem Niedergang des “landesherrlichen Visitationsverfahrens” im 18. Jahrhundert für heute lernen
Datacroft Cost Importer, Consistent Marketing Channel and Campaign Setup, Google Cloud, and Transaction ID Data Source Imports
Part I showed how important it is to become aware of “Actual” Revenue to counter the “Tracked” Revenue, and why a true Performance Marketer should not look only at the (Tracked) Revenue per Cost (misleadingly called Return on Ad Spend (ROAS)), but at the Profit Margin per Ad Cost. Part I also showed: For such a complete picture, you need to blend a lot of data sources. Thus, part II highlights the components required to get all that data together into Adobe Analytics. The “changing past” becomes a special challenge here.
Erasing the Blind Spot of Marketing Measurement.
Your Analytics Revenue is misleading— in some cases it is over 50% off. But not because of tracking errors! Start to understand your real Marketing performance: Analyze your Campaigns (and anything else people do on your site) by the actually invoiced Revenue and Profit Margin — all while staying within Adobe Analytics.
Over the last year, a client has been rolling out a large online shop’s new website and mobile app. Since the customer is all in on Google’s Analytics and Marketing solutions and the old Google Analytics Mobile App SDK was announced to be sunset, “Google Analytics for Firebase” and the promising “Web+App Properties” seemed like the logical solution for tracking the app. After all, there was no Google event, no Google blog post where Firebase was not hyped as if it were the new Garden of Eden. Maybe the less finished a product is, the more it needs to be hyped.
I struggled with finding a decent title for this second part of my series on Ad Blockers, ITP & other browser restrictions, and Server-Side Tracking. I tried “When an Order is not an Order”, “Help! Ad Blockers eat up 60% Percent of our Revenue in Analytics!”. As I studied Cultural Sciences about 70 years ago, I finally wanted to go for a more academic branding: “Comparing Apples to Apples or: A Primer in Constructivism”.But that’s not “SEO-/Social-Media-friendly”. Best of/Pest of Lists are. Users getting wiped out (from your Analytics data), too. So you get the headline you deserve. Full of blood and exaggerrations. You still want to know what Constructivism has to do with Ad Blockers? Great. …
How to enhance Tealium with a “utagQueue” to avoid losing data if users start clicking around before the Tealium library has loaded.
In the first part of this series on Ad Blockers and Server-Side Tracking, I will look at how the proliferation of technologies like Safari’s ITP have put the good old “client-side” tracking into limbo. This will ultimately lead not to less tracking, but instead to less transparent tracking — at least for those companies that can afford it.
Plus: Why going against the alphabet makes queries easier
Long before Firestore made it into the toolkit of Google Tag Manager’s Server-Side offering, it was a powerful document database. Working with Firestore for some years now, I want to share simple tips that may help you avoid the same mistakes I made. First though, I will compare Firestore with classical SQL-style databases.