Skip to content
Barcha maqolalar
Reklama8 daq

Mijozlar qo‘ng‘iroq emas, Telegram’da yozsa, arizalarni qanday sanash

O‘zbekistonda mijoz qo‘ng‘iroq qilish yoki forma to‘ldirishdan ko‘ra «Telegram’da yozish»ni ko‘proq bosadi. Analitika uchun bu qora tuynuk: odam saytdan chiqib ketdi, hisoblagichlar uni boshqa ko‘rmaydi. Bu tuynukni pullik servislarsiz qanday yopishimizni ko‘rsataman.

Mirodil OrtiqovBackend dasturchi

Tanish manzara: Google Analytics’da bir oyda nol konversiya, menejer esa Telegram’da javob berishga ulgurmayotganini aytadi. Ikkala tomon ham haq. Shunchaki sayt odamni messenjerga uzatadi va shu daqiqada zanjir uziladi. Reklama o‘zini ishlamayapti deb o‘ylaydi. Egasi «og‘zaki reklama» ishlayapti deb o‘ylaydi. Byudjet noto‘g‘ri joydan qisqartiriladi.

Men backend dasturchiman va bu vazifa menga yoqadi, chunki u oyiga yuzlab dollarlik marketing vositalari bilan emas, bir necha o‘nlab qator kod va intizom bilan hal qilinadi. Quyida o‘z loyihalarimizga qo‘yadigan narsalarni qadamma-qadam yozaman.

Manba qayerda yo‘qoladi

Avval «odam qayerdan keldi» degan ma’lumot qaysi joylarda yo‘qolishini tushunib olish foydali. Ular uchta, va har biri uchun o‘z yechimi bor.

Qayerda uziladi Sozlamasiz nima ko‘rinadi Nima qilish mumkin
Saytdagi t.me/... havolasiga klik Hech narsa yoki tafsilotsiz «tashqi o‘tish» GA4’da hodisa va Metrika’da maqsad
Odam botni ochdi /start fakti, manba noma’lum Bot havolasida start-parametr
Odam menejerga shaxsiy chatda yozdi Faqat dialogning o‘zi So‘rash, vaqt bo‘yicha solishtirish, jadval yuritish
Saytdagi forma Ariza bor, manba ko‘pincha yo‘qoladi Ariza bilan birga UTM va sahifani uzatish

Oxirgi qator Telegram haqida emas, lekin uni qo‘shdik, chunki arizani Telegram-kanalga yuboradigan formalar deyarli har bir saytimizda bor va u yerda ham manbani yo‘qotish oson.

1-qadam. t.me’ga klik hodisa sifatida

Eng oddiy va eng kam baholanadigan narsa. Kengaytirilgan statistika yoqilgan GA4 tashqi havolalarga kliklarni o‘zi yozadi, lekin umumiy uyumda, Instagram va xaritalarga o‘tishlar bilan birga. Metrika’da «Messenjerga o‘tish» avtomaqsadi bor. Menga bu kam: men keyin Google Ads va Direct’ga import qilsa bo‘ladigan, tushunarli nomli alohida hodisani ko‘rmoqchiman.

Saytga ilinadigan minimal kod:

document.addEventListener('click', (e) => {
  const link = e.target.closest('a[href*="t.me/"]');
  if (!link) return;
  const params = { link_url: link.href, page: location.pathname };
  window.gtag?.('event', 'telegram_click', params);
  window.ym?.(COUNTER_ID, 'reachGoal', 'telegram_click', params);
});

Har bir tugmaga emas, butun hujjatga bitta ishlovchi. Tugmalar qo‘shiladi, ko‘chadi, dizayner maketni o‘zgartiradi, hodisa esa ishlashda davom etadi. GA4 bunday hodisalarni sendBeacon orqali yuboradi, shuning uchun Telegram xuddi shu vkladkada ochilsa ham ular jo‘natilib ulguradi.

2-qadam. Botgacha yetib boradigan UTM

Bot bilan shaxsiy akkaunt bilan qilib bo‘lmaydigan ishni qilish mumkin: unga belgi uzatish. https://t.me/YourBot?start=google_brand ko‘rinishidagi havola botni ochadi, odam «Start»ni bosganda bot /start google_brand buyrug‘ini oladi. Odamning o‘zi bu belgini ko‘rmaydi.

Start-parametr cheklovlari qattiq: 64 belgigacha, faqat lotin harflari, raqamlar, _ va -. U yerda = va & bo‘lishi mumkin emas, shuning uchun to‘liq UTM qatorini qo‘yib bo‘lmaydi. Biz uni to‘g‘ridan-to‘g‘ri saytda qisqa kodga siqamiz:

const p = new URLSearchParams(location.search);
const src = (p.get('utm_source') || 'direct').slice(0, 20);
const cmp = (p.get('utm_campaign') || 'none').slice(0, 30);
const code = `${src}__${cmp}`.replace(/[^A-Za-z0-9_-]/g, '');
document.querySelectorAll('a[href^="https://t.me/YourBot"]')
  .forEach((a) => { a.href = `https://t.me/YourBot?start=${code}`; });

aiogram 3’dagi botda esa belgini bitta filtr bilan olamiz va foydalanuvchi bilan birga saqlaymiz:

@router.message(CommandStart(deep_link=True))
async def start_from_link(message: Message, command: CommandObject):
    await save_source(message.from_user.id, command.args)  # "google__brand_ru"
    await show_main_menu(message)

Keyin hammasi oddiy. Foydalanuvchi buyurtma berganda bot saqlangan manbani operatorlar uchun xabarga qo‘shadi. Taxminan shunday ko‘rinadi:

B
Buyurtmalar — operatorlar kanali
bot
Yangi buyurtma #1042. «O‘rtacha» to‘plam, 2 dona. Yetkazish ertaga, 14:00–16:00. Qabul qiluvchi: +998 •• ••• •• 17
Manba: google__brand_ru. Birinchi tashrif: 3 kun oldin
Admin’da ochish
Mijozga qo‘ng‘iroq

Endi buni qayerda qilmaganimiz haqida halol. Chocoberry Queen botida buyurtmalar operatorlar kanaliga manzil, xaritadagi nuqta va admin’dagi buyurtmaga havola bilan ketadi, lekin 2024-yilda u yerga start-parametrlarni qo‘ymadik. Boshida bu ortiqcha tuyulgandi: bot endi ishga tushayotgan edi, va biz birinchi navbatda katalog va yetkazib berish haqida o‘ylardik. Belgilarni istalgan paytda qo‘shish mumkin, lekin tarixni orqaga qaytib tiklab bo‘lmaydi: agar egasi, aytaylik, Instagram’dagi targetni blogerlardagi reklama bilan solishtirmoqchi bo‘lsa, birinchi oylar uchun ma’lumot shunchaki bo‘lmaydi. Endi start-parametrlar har bir yangi botimiz shablonida birinchi kundan bor.

Mijozlar botga emas, menejerga shaxsiy chatda yozsa-chi? Shaxsiy akkauntga belgi uzatib bo‘lmaydi: t.me/username havolasida start-parametr yo‘q. Bu yerda bizda uchta usul bor va hech biri mukammal emas. Birinchisi: reklamani salomlashadigan, manbani saqlaydigan va darhol tirik menejer bilan bog‘lanish tugmasini beradigan botga yo‘naltirish. Ikkinchisi: reklama uchun alohida ishchi akkaunt, hech bo‘lmaganda reklama dialoglarini qolganlaridan ajratish uchun. Uchinchisi, eng oddiysi: menejer birinchi javobidayoq odam siz haqingizda qayerdan bilganini so‘raydi va chatga papka-belgi qo‘yadi. Bu qo‘l mehnati, lekin haftasiga yigirmata dialog uchun bir-ikki daqiqa oladi.

3-qadam. Formadan ariza to‘g‘ridan-to‘g‘ri Telegram’ga

Odamlarning asosiy qismi messenjerda yozsa ham, saytda forma kerak: kimdir yozishishni istamaydi, kimdir Telegram o‘rnatilmagan ish kompyuteridan kiradi. Formadan kelgan arizalar pochtada yo‘qolib ketmasligi uchun ularni sotuv bo‘limining Telegram-guruhi yoki kanaliga yuboramiz.

IBN Express sayti shunday tuzilgan: odam mashina tashish hisob-kitobini to‘ldiradi (qayerdan, qayerga, yili, markasi, modeli, tashish turi, sana), ariza Django’dagi bazada saqlanadi va o‘sha soniyada sotuv Telegram-kanaliga xabar bo‘lib ketadi. Menejer qo‘ng‘iroq uchun kerak bo‘lgan hamma narsani ko‘radi va hech qanday CRM ochmaydi.

Agar bu formani bugun qilganimda, xabarga yana ikki qator qo‘shgan bo‘lardim: ariza kelgan sahifa va UTM-belgilar. Texnik jihatdan bu so‘rovdagi uchta maydon: source: location.pathname, utm: location.search va sana. Hozir bu bizda standart, o‘shanda esa faqat javob tezligi haqida o‘ylagan edik.

Qoqilgan bir nechta amaliy tafsilot:

  • bot tokeni faqat serverda, muhit o‘zgaruvchilarida yashaydi. Telegram’ga xabarni to‘g‘ridan-to‘g‘ri brauzerdan yuborish mumkin emas, token birinchi kunning o‘zidayoq oqib ketadi;
  • Telegram’ga xabar ariza bazaga saqlangandan keyin yuboriladi, uning o‘rniga emas. Telegram API ba’zan xato qaytaradi, ariza esa qolishi kerak;
  • spamdan hech bo‘lmaganda yashirin honeypot-maydon va reCAPTCHA v3 kerak. Ularsiz bir oydan keyin kanalni botlar bosib ketadi.

Uchdan-uch analitikani almashtiradigan jadval

Katta kompaniyalarda uchdan-uch analitika qimmat turadi, chunki u reklama, sayt, qo‘ng‘iroqlar va CRM’ni avtomatik bog‘laydi. Arizalar minglab emas, o‘nlab bo‘lgan Toshkentdagi kichik biznes uchun jadval va haftasiga o‘n besh daqiqa yetarli.

Reklamani yuritayotgan loyihalarda har hafta qiladigan ishlarimiz:

  • GA4 va Metrika’dan telegram_click hodisalari va forma yuborishlarni manbalar bo‘yicha yuklab olamiz
  • Sotuv Telegram-kanalidagi arizalarni bot va formadagi belgilar bo‘yicha bo‘lib sanaymiz
  • Menejerdan shaxsiy chatga belgisiz nechta dialog kelgani va mijozlar aytishicha qayerdan ekanini so‘raymiz
  • Nechta ariza to‘lovgacha yetganini belgilaymiz (buni faqat menejer biladi)
  • Jadvalga har bir manba uchun bitta qator yozamiz: kliklar, arizalar, to‘lovlar, xarajat
  • O‘tgan hafta bilan solishtiramiz va faqat shundan keyin reklamaga tegamiz

Bunday jadvalning bir oyidan keyin har bir kanal bo‘yicha birinchi marta klik emas, to‘langan buyurtma narxini ko‘rasiz. Ko‘pincha u tasavvurlarni ostin-ustun qiladi: eng arzon klikli kanal to‘lovlar bo‘yicha eng qimmati bo‘lib chiqadi.

«Biz haqimizda qayerdan bildingiz?» degan savolni menejer baribir berishi kerak. Odamlar har doim ham aniq eslamaydi, lekin belgilar bilan birga manzara yig‘iladi.

Agar sizga bot kerakmi yoki Telegram tugmali sayt yetarlimi, hali hal qilayotgan bo‘lsangiz, Azamat buni avval nima qilish kerak: bot yoki sayt maqolasida tahlil qilgan. Agar bot allaqachon bo‘lsa-yu, unda belgilar uzatilmasa, bu bir-ikki soatlik ish: Telegram’da @Azamat_yamin’ga yozing, ko‘rib chiqamiz, yoki Telegram-bot ishlab chiqish sahifasiga qarang.

Vazifa bormi? Yozing — muhokama qilamiz.

Telegram’da to‘g‘ridan-to‘g‘ri studiya asoschisiga yozing. Nima kerakligini ikki og‘iz so‘z bilan ayting — savollar va taxminiy baho bilan javob beramiz.