A/B тестване на вашия сайт с Cloudflare Workers: Без бисквитки, с респект към ePrivacy директивата и GDPR

Статията съдържа:

Кога може да приложите този метод за тестване?

A/B тестването чрез Cloudflare Workers е мощен инструмент за бизнеси, които искат да оптимизират конверсии и потребителско поведение, без да нарушават законовите изисквания и без да усложняват архитектурата на сайта си.

То е идеално за случаи, в които трафикът идва от ЕС, искате максимална скорост и искате пълен контрол върху логиката на теста — независимо от backend технологията или рекламната платформа.

Ако пускате реклами и искате да тествате различни версии на вашата лендинг страница, най-ефективният начин е да разпределяте трафика преди потребителят дори да е достигнал сървъра ви.

В тази статия ще ви покажем как да го направите с Cloudflare Workers, без да използвате бисквитки — което е особено важно за спазване на ePrivacy директивата и GDPR в ЕС.

Също така ще ви покажем как да следите резултатите в Google Analytics и Google Ads използвайки Google Tag Manager.

Защо Cloudflare Workers?

Cloudflare Workers ви позволяват да пишете JavaScript код, който се изпълнява на ръба на мрежата (edge). Това означава:

  • Ниска латентност
  • Няма нужда от промени по backend-а
  • Лесно и евтино мащабиране
  • Може да реализирате A/B тестване без бисквитки
  • Универсално решение, което не зависи от трети страни като Google, Facebook и т.н.

Стъпка 1: Създайте нов Worker проект

Ще използваме C3 за създаване на нов Cloudflare проект. C3 e CLI инструмент от Cloudflare който спомага за създаването, деплойването и тестването на нови приложения в Cloudflare.

npm create cloudflare@latest -- my-first-worker

Изберете следните настройки:

  • За What would you like to start with?, изберете Hello World Starter.
  • За Which template would you like to use?, изберете Worker only.
  • За Which language do you want to use?, изберете JavaScript.
  • За Do you want to use git for version control?, изберете Yes.
  • За Do you want to deploy your application?, изберете No (ще направим някои промени, преди да деплойнем).

⠀След като сме настройли проекта, е време да влезем в папката.

cd my-first-worker

Стъпка 2: Добавете логика за A/B тестване

Отворете src/index.js и заменете съдържанието с:

export default {
  async fetch(request, env, ctx) {
    const url = new URL(request.url);

    // страницата, върху която искаме да изпълним А/Б теста
    if (url.pathname === "/control") {
      const ip = request.headers.get("CF-Connecting-IP") || "";
      let bucket = 0;

      // Просто и лесно разделяне по бъкети на базата на последния октет от IP-то
      const octets = ip.split(".");

      if (octets.length === 4) {
        const last = parseInt(octets[3], 10);
        if (!isNaN(last)) {
          bucket = last % 2;
        }
      }

      // Алтернативната страница
      url.pathname = bucket === 0 ? "/control" : "/test";

      return fetch(url.toString(), request);
    }

    // другите заявки остават без промяна
    return fetch(request); 
  }
};

Стъпка 3: Локално тестване

wrangler dev

Тествайте с различни IP адреси:

curl -H "CF-Connecting-IP: 192.168.0.12" http://localhost:8787/control

Стъпка 4: Деплой в Cloudflare

Във вашия package.json, добавете, ако вече не съществува:

"scripts": {
  "deploy": "wrangler deploy"
}

След това деплойнете със следната команда:

npm run deploy -- --routes https://yourdomain.com/control

Важно: използвайте двойното --, за да се предадат правилно аргументите към Wrangler.

Проследяване в Google Analytics и Google Tag Manager

Използвайте URL пътя (/control или /test) като параметър за сегментиране.

В допълнение, можете да изпратите събитие към Google Tag Manager за следене на резултатите в Google Ads:

<script>
  const variant = location.pathname.endsWith('-a') ? 'A' : 'B';
  gtag?.('event', 'ab_variant_assigned', {
    ab_variant: variant
  });
</script>

Защо не с Google Ads?

Google Ads поддържа т.нар. Experiments, с които може да разделите трафика между две реклами, сочещи към различни URL-и. Но това:

  • Не покрива директния трафик
  • Не е гъвкаво
  • Не работи извън Google екосистемата

⠀С Cloudflare Workers имате пълен контрол, без нужда от допълнителни зависимости и без нарушаване на GDPR.

В заключение

С тази настройка получавате:

  • Лек и бърз A/B тест, реализиран на ръба на мрежата
  • Без бисквитки
  • Лесна интеграция с Google Analytics

Ние от CreaDev можем да го реализираме вместо вас

Ако искате да приложите този тип A/B тестване във вашия проект, но нямате време, ресурси или опит с Cloudflare Workers — оставете всичко на нас.
Екипът на CreaDev има опит в изграждането на бързи, сигурни и напълно съвместими с GDPR решения за A/B тестване, които:

  • Работят без бисквитки
  • Не изискват промени по бекенда
  • Се интегрират лесно с Google Analytics и Tag Manager
  • Се мащабират безпроблемно за голям трафик

Свържете се с нас, ако искате персонализирана консултация или цялостна реализация — ще ви помогнем да вземате по-добри решения чрез сигурни и интелигентни тестове още от първата заявка на потребителя.

Сподели:

Абонирай се за нашия блог

Прочети още: