Skip to content
CMO & CTO
CMO & CTO

Closing the Bridge Between Marketing and Technology, By Luis Fernandez

  • Digital Experience
    • Experience Strategy
    • Experience-Driven Commerce
    • Multi-Channel Experience
    • Personalization & Targeting
    • SEO & Performance
    • User Journey & Behavior
  • Marketing Technologies
    • Analytics & Measurement
    • Content Management Systems
    • Customer Data Platforms
    • Digital Asset Management
    • Marketing Automation
    • MarTech Stack & Strategy
    • Technology Buying & ROI
  • Software Engineering
    • Software Engineering
    • Software Architecture
    • General Software
    • Development Practices
    • Productivity & Workflow
    • Code
    • Engineering Management
    • Business of Software
    • Code
    • Digital Transformation
    • Systems Thinking
    • Technical Implementation
  • About
CMO & CTO

Closing the Bridge Between Marketing and Technology, By Luis Fernandez

Designing good experiments

Posted on January 8, 2019 By Luis Fernandez

Designing good experiments is not about fancy math or dashboards with too many colors. It is about choosing a clear question, making a decision in advance, and being honest about trade offs. Everyone is spinning up AB tests right now. Product teams are chasing signups, growth crews want more clicks, marketers want cheaper conversions. Feels like a gold rush. Without a plan you end up with noise, not signal.


Problem framing

Start with a question you can actually answer. What decision will this experiment change and when will you make it. If the answer is fuzzy, the design will be too. In this moment we have tools that make it easy to ship flags, randomize users, and split traffic. The hard part is picking a metric that represents value and a window of time long enough to see that value show up.

Pick one primary metric. It can be conversion rate, completed orders, day seven retention, or support contacts per user. Make it specific. If your test is about first time purchase, do not judge it on monthly revenue. That is a different question. Add a small set of guardrail metrics to protect against weird outcomes. For example, if you try a bold sign up prompt, watch bounce rate and refund rate so you do not trade short term wins for long term pain.

Then get real about sample size and time. Decide the minimum change worth shipping. A two percent lift might sound nice, but if it takes a month to detect it with your traffic, you will freeze your roadmap. On the flip side, if you only wait two days you might catch a novelty bump and ship something that fades. Better to set these thresholds before you see any result. You want to prevent emotional spins when early numbers move.

Finally, agree on who is included. New users only, returning only, or all traffic. If your test targets a specific segment, keep your analysis on that same segment. Randomization still matters. Flipped flags at the wrong layer leak users across variants. That blurs the effect. Control what you can. Be humble about what you cannot.


Patterns and anti patterns

Patterns that work

  • Write the decision first. One paragraph that states the change to ship if A wins, if B wins, or if it is too close to call. This cuts debates later.
  • Pick a single winner metric. Tie everything to it. Secondary metrics are supporting actors, not the star of the show.
  • Pre commit to sample size and run time. Use a simple power calculator. Keep it simple. Better to run fewer clean tests than many half baked ones.
  • Log exposure. Record who saw what, when, and under which app version. You will thank yourself when results look odd.
  • Hold back a steady control. If your team runs many tests, keep a small slice of traffic on no change for a while. It gives you a baseline against seasonal swings.
  • Share a one pager. Hypothesis, setup, metrics, stop rules, and planned decision. Keep it short so people read it.

Anti patterns to avoid

  • Peeking and stopping when it looks good. Early spikes often fade. Set a stop rule and stick to it.
  • Metric shopping. If the primary did not move, do not go fishing through twenty charts to find a friendly line.
  • Stacking multiple changes in one test. New copy, new layout, new price, new email. If it moves, you will not know why.
  • Re running the same test after a loss with the same setup. If you believe the change is right, adjust the design or choose a different metric.
  • Reading noisy sub segments. Tiny cohorts bounce around. If you must slice, do it with a plan and enough data.

Case vignette

A consumer app wanted to boost new user activation. Think of it as the moment when someone goes from curious to engaged. The team had two ideas. Idea A was a friend invite that shows right after sign up. Idea B was a guided checklist that breaks the first day into three small steps. Both were easy to ship. Both looked shiny in a prototype.

The team wrote a tight plan. Primary metric: day three active rate for brand new users. Guardrails: uninstall rate within the first week, customer support contacts per new user, and average app rating in the store. Decision rule: ship the winner if it beats control by at least three percent with the pre set sample size, or keep control if it is inside the noise. They also agreed not to touch copy or pricing during the run.

They planned for two weeks of traffic based on their volume. Midway through the run, early numbers showed a strong lift for the friend invite. Slack went wild. The team stayed calm. They kept the test running per plan. By the end of the window the lift dropped to a modest one percent. The guided checklist ended flat. Uninstalls ticked up slightly for the invite group. Support contacts also grew, with users asking how to remove the invite step. Ratings did not move.

In a review they played back the decision rule. One percent lift was below the threshold. The support signal made the picture even murkier. Shipping the invite felt tempting, but it would burn good will for a small gain. They did not ship either variant. They moved to a second round with a lighter touch. A small nudge in the same place, plus a clearer skip option. Same primary metric, same guardrails, cleaner design.

Round two was boring in the best way. The nudge variant beat control by four percent on day three active. Uninstalls stayed flat. Support did not spike. The team shipped it behind a flag to all new users and watched the same metrics for two more weeks. Stable. Done.

What made this work was not a fancy framework. It was the discipline to lock decisions up front, watch the guardrails, and accept when a shiny idea did not meet the bar. The early spike could have fooled them. The plan saved them from chasing a short kick that fades.


Lessons learned

  • Decide what you will do before you see numbers. It keeps you honest and moves the team faster once the test ends.
  • Choose a metric that reflects real value. Vanity metrics can move while the business stands still. Pick the one that matches the decision you will take.
  • Guardrails are your seat belt. They catch side effects that would hurt trust or long term health.
  • Plan for power and patience. Small lifts take time to detect. Either accept longer runs or aim for bigger changes. Do not split traffic into dust across ten tests at once.
  • Document exposure and context. App version, timestamp, user segment. When results surprise you, context turns chaos into clarity.
  • Learn, then simplify. If a bold idea is noisy, find the smallest helpful change and test that. Small wins add up.
  • Share wins and losses. A living log of experiments helps the next person avoid old mistakes and repeat good calls.

Right now we all have strong tools for flags, events, and dashboards. Cloud costs are low. Shipping is fast. App stores are noisy. Feeds change daily. That makes good experiment design a superpower. Clear question. Single metric. Guardrails. Pre set stop rule. Write the decision first. You will ship better work and argue less in meetings.

If you are just getting started, pick one area of your product and run three clean tests in a row. Keep the scope tight. Share the one pagers with the whole team. After that, scale up. The discipline you build now will pay for itself when stakes get higher and every change competes for attention.

Analytics & Measurement Digital Experience Experience Strategy Marketing Technologies Ab TestingConversion Optimizationmetrics

Post navigation

Previous post
Next post
  • Digital Experience (94)
    • Experience Strategy (19)
    • Experience-Driven Commerce (5)
    • Multi-Channel Experience (9)
    • Personalization & Targeting (21)
    • SEO & Performance (10)
  • Marketing Technologies (92)
    • Analytics & Measurement (14)
    • Content Management Systems (45)
    • Customer Data Platforms (4)
    • Digital Asset Management (8)
    • Marketing Automation (6)
    • MarTech Stack & Strategy (10)
    • Technology Buying & ROI (3)
  • Software Engineering (310)
    • Business of Software (20)
    • Code (30)
    • Development Practices (52)
    • Digital Transformation (21)
    • Engineering Management (25)
    • General Software (82)
    • Productivity & Workflow (30)
    • Software Architecture (85)
    • Technical Implementation (23)
  • 2025 (12)
  • 2024 (8)
  • 2023 (18)
  • 2022 (13)
  • 2021 (3)
  • 2020 (8)
  • 2019 (8)
  • 2018 (23)
  • 2017 (17)
  • 2016 (40)
  • 2015 (37)
  • 2014 (25)
  • 2013 (28)
  • 2012 (24)
  • 2011 (30)
  • 2010 (42)
  • 2009 (25)
  • 2008 (13)
  • 2007 (33)
  • 2006 (26)

Ab Testing Adobe Adobe Analytics Adobe Target AEM agile-methodologies Analytics architecture-patterns CDP CMS coding-practices content-marketing Content Supply Chain Conversion Optimization Core Web Vitals customer-education Customer Data Platform Customer Experience Customer Journey DAM Data Layer Data Unification documentation DXP Individualization java Martech metrics mobile-development Mobile First Multichannel Omnichannel Personalization product-strategy project-management Responsive Design Search Engine Optimization Segmentation seo spring Targeting Tracking user-experience User Journey web-development

©2025 CMO & CTO | WordPress Theme by SuperbThemes