Header Ads

Header ADS

PPC — Pay Per Click

 

PPC — Pay Per Click সম্পূর্ণ ব্যাখ্যা 📖


১. আগে একটা Real Story দিয়ে শুরু করি

🏪 ধরো FoodBD App এর কথা

FoodBD এর Marketing Manager দুইটা option দেখছে Ad দেওয়ার জন্য —

Option A — Billboard (রাস্তার পাশে বড় বোর্ড):

ঢাকার মিরপুরে একটা বড় billboard লাগালো।
প্রতি মাসে ৳৫০,০০০ দিতে হবে।
১০ লাখ মানুষ দেখলো।
কিন্তু কতজন actually app download করলো?
জানার কোনো উপায় নেই। 😕
টাকা যাচ্ছেই — click হোক বা না হোক।

Option B — Google/Facebook Ad (PPC):

Google এ Ad দিলো।
কেউ Ad দেখলো কিন্তু click করলো না → কোনো টাকা লাগলো না ✅
কেউ Ad এ click করলো → তখনই টাকা কাটলো ✅
মানে — শুধু কাজের মানুষের জন্যই টাকা দিচ্ছো।

এই Option B এর পুরো system টাই হলো PPC।


২. PPC কী? (Definition)

PPC = Pay Per Click

PPC হলো একটা Advertising Model যেখানে Advertiser শুধুমাত্র তখনই টাকা দেয় যখন কেউ তার Ad এ Click করে।

Ad দেখলো → টাকা নেই
Ad এ Click করলো → তখনই টাকা কাটলো

৩. PPC vs CPC — এই দুইটা কি একই জিনিস?

এখানে অনেকেই confuse হয়। পরিষ্কার করি।

┌─────────────────────────────────────────────────────┐
│                                                     │
│   PPC = একটা ADVERTISING MODEL/SYSTEM              │
│         (কীভাবে টাকা দেবো তার পদ্ধতি)             │
│                                                     │
│   CPC = একটা METRIC/NUMBER                         │
│         (প্রতিটা click এ কত টাকা গেছে)             │
│                                                     │
└─────────────────────────────────────────────────────┘

Real Life Example:

তুমি Pathao তে ride নিলে — এটা একটা SYSTEM (Ride Sharing)
সেই ride এ কত টাকা লাগলো — এটা একটা NUMBER (Fare)

ঠিক তেমনি:
PPC = Ride Sharing System এর মতো (Ad দেওয়ার পদ্ধতি)
CPC = Fare এর মতো (প্রতি click এ কত টাকা)

সহজ সম্পর্ক:

তুমি PPC Model এ Ad দিলে
সেই Ad এর প্রতিটা Click এর Cost হলো CPC

PPC Campaign চালালে → CPC দিয়ে measure করো

৪. PPC কীভাবে কাজ করে? (Step by Step)

Google Search এ PPC এর উদাহরণ:


STEP 1 — User কিছু Search করে

একজন user Google এ লিখলো:
"ঢাকায় food delivery app"

STEP 2 — Auction হয়

Google এর পেছনে automatically একটা
Auction (নিলাম) শুরু হয়।

FoodBD    → "আমি এই keyword এ ৳৫ দেবো per click"
HungryBD  → "আমি ৳৩ দেবো per click"
Shohoz    → "আমি ৳৪ দেবো per click"

এই পুরো process টা মিলিসেকেন্ডে হয়।
User কিছুই বোঝে না।

STEP 3 — Ad দেখায়

Google সবচেয়ে বেশি bid করা
এবং সবচেয়ে relevant Ad দেখায়।

Search Result:
┌────────────────────────────────────┐
│ [Ad] FoodBD - Fast Food Delivery   │ ← FoodBD জিতেছে
│ Order now and get 20% off!         │
│ foodbd.com                         │
├────────────────────────────────────┤
│ [Ad] Shohoz Food                   │ ← Shohoz 2nd
│ shohoz.com/food                    │
└────────────────────────────────────┘

STEP 4 — Click হলে টাকা কাটে

User FoodBD এর Ad এ click করলো
→ FoodBD এর account থেকে ৳৫ কাটলো

User Ad দেখলো কিন্তু click করলো না
→ কোনো টাকা কাটলো না ✅

৫. PPC এর প্রকারভেদ (Types)

Type 1 — Search Ads (সবচেয়ে Common)

কোথায়: Google Search, Bing Search
কখন দেখায়: User কিছু search করলে

Example:
User লিখলো "food delivery dhaka"
→ FoodBD এর Ad উপরে দেখায়

কখন use করবে:
মানুষ already কিছু খুঁজছে,
তাদের কাছে পৌঁছাতে চাও।

Type 2 — Display Ads (ছবি/Banner Ad)

কোথায়: বিভিন্ন website এর মধ্যে
কখন দেখায়: User অন্য website browse করার সময়

Example:
তুমি Prothom Alo পড়ছো
→ পাশে FoodBD এর colorful banner দেখাচ্ছে

কখন use করবে:
Brand awareness বাড়াতে চাও।

Type 3 — Social Media Ads

কোথায়: Facebook, Instagram, TikTok
কখন দেখায়: Feed scroll করার সময়

Example:
Facebook scroll করতে করতে
→ FoodBD এর "৫০% off first order" Ad দেখালো

কখন use করবে:
Specific age/location/interest
এর মানুষদের target করতে চাও।

Type 4 — Shopping Ads

কোথায়: Google Shopping
কখন দেখায়: Product search করলে

Example:
"running shoes buy online" লিখলে
→ ছবিসহ product এবং দাম দেখায়

কখন use করবে:
E-commerce product বিক্রি করতে চাও।

৬. PPC Campaign এর গুরুত্বপূর্ণ Terms

🔑 Keyword

যে শব্দ বা phrase user search করলে
তোমার Ad দেখাবে।

Example:
FoodBD এর Keywords:
→ "food delivery dhaka"
→ "online food order"
→ "burger delivery near me"

💰 Bid

তুমি প্রতিটা click এর জন্য
সর্বোচ্চ কত টাকা দিতে রাজি আছো।

Example:
FoodBD এর Bid = ৳৫ per click
মানে — প্রতি click এ সর্বোচ্চ ৳৫ দেবে।
কিন্তু সবসময় ৳৫ কাটে না,
কম ও কাটতে পারে।

📊 Quality Score

Google তোমার Ad কে ১-১০ এ score দেয়।

Score বেশি হলে:
→ Ad উপরে দেখায়
→ প্রতি click এ কম টাকা লাগে

Score কম হলে:
→ Ad নিচে দেখায়
→ প্রতি click এ বেশি টাকা লাগে

Quality Score নির্ভর করে:
→ Ad কতটা relevant
→ Landing page কতটা ভালো
→ CTR কত

📄 Landing Page

Ad এ click করলে user যে page এ যায়।

Example:
FoodBD এর Ad এ click করলে
→ FoodBD এর App download page এ যায়

ভালো Landing Page = বেশি Conversion
খারাপ Landing Page = টাকা waste

🎯 Ad Rank

তোমার Ad কত নম্বরে দেখাবে সেটা।

Ad Rank নির্ভর করে:
Bid × Quality Score

Example:
FoodBD:  Bid ৳৫  × Quality Score ৮ = Ad Rank ৪০
HungryBD: Bid ৳৮  × Quality Score ৪ = Ad Rank ৩২
Shohoz:  Bid ৳৩  × Quality Score ৯ = Ad Rank ২৭

Winner → FoodBD (Ad Rank সবচেয়ে বেশি)
মানে বেশি Bid দিলেই জেতা যায় না,
Ad quality ও গুরুত্বপূর্ণ।

৭. PPC এর সাথে যে Metrics গুলো দেখতে হয়

┌─────────────────────────────────────────────────────────┐
│                   PPC Campaign                          │
├──────────────┬──────────────┬───────────────────────────┤
│     CPC      │     CTR      │      Conversion Rate      │
│  প্রতি click │  কতজন click │  click করে কতজন          │
│  এ কত টাকা  │  করলো       │  actually কিনলো/install   │
├──────────────┼──────────────┼───────────────────────────┤
│   ৳২০        │    2%        │         5%                │
└──────────────┴──────────────┴───────────────────────────┘
         │              │                  │
         ▼              ▼                  ▼
    কম হলে ভালো   বেশি হলে ভালো      বেশি হলে ভালো

৮. Database Structure

-- PPC Campaign track করার জন্য
CREATE TABLE ppc_campaigns (
    id                  SERIAL PRIMARY KEY,
    campaign_name       VARCHAR(100) NOT NULL,
    platform            VARCHAR(50),           -- 'google','facebook'
    campaign_type       VARCHAR(50),           -- 'search','display','social'
    keyword             VARCHAR(200),          -- target keyword
    bid_amount          DECIMAL(10,2),         -- max bid per click
    daily_budget        DECIMAL(10,2),         -- দিনে সর্বোচ্চ কত খরচ
    total_spend         DECIMAL(10,2) DEFAULT 0,
    total_impressions   BIGINT DEFAULT 0,
    total_clicks        BIGINT DEFAULT 0,
    total_conversions   INT DEFAULT 0,         -- কতজন actually কিনলো
    start_date          DATE,
    end_date            DATE,
    status              VARCHAR(20) DEFAULT 'active'
);

৯. SQL দিয়ে PPC Performance দেখা

Query 1 — Full PPC Report

SELECT
    campaign_name,
    platform,
    campaign_type,
    keyword,
    bid_amount,
    total_spend,
    total_impressions,
    total_clicks,
    total_conversions,

    -- CPC
    ROUND(
        total_spend /
        NULLIF(total_clicks, 0)
    , 2)                                AS cpc,

    -- CTR
    ROUND(
        total_clicks * 100.0 /
        NULLIF(total_impressions, 0)
    , 2)                                AS ctr,

    -- Conversion Rate
    ROUND(
        total_conversions * 100.0 /
        NULLIF(total_clicks, 0)
    , 2)                                AS conversion_rate,

    -- Cost Per Conversion
    -- প্রতিটা conversion এ কত টাকা গেছে
    ROUND(
        total_spend /
        NULLIF(total_conversions, 0)
    , 2)                                AS cost_per_conversion

FROM ppc_campaigns
WHERE status = 'active'
ORDER BY cost_per_conversion ASC;

Output:

campaign_name       | platform | keyword              | spend  | clicks | conv | cpc  | ctr  | conv_rate | cost_per_conv
--------------------|----------|----------------------|--------|--------|------|------|------|-----------|---------------
FoodBD App Install  | google   | food delivery dhaka  | 20000  | 10000  | 500  | 2.00 | 4.0  | 5.00%     | 40.00
FoodBD Brand Aware  | facebook | -                    | 15000  | 5000   | 150  | 3.00 | 2.5  | 3.00%     | 100.00
FoodBD Ramadan      | google   | online food order    | 10000  | 3000   | 60   | 3.33 | 1.5  | 2.00%     | 166.67

Query 2 — Keyword wise Performance

-- কোন keyword সবচেয়ে ভালো perform করছে?
SELECT
    keyword,
    SUM(total_spend)            AS total_spend,
    SUM(total_clicks)           AS total_clicks,
    SUM(total_conversions)      AS total_conversions,

    ROUND(
        SUM(total_spend) /
        NULLIF(SUM(total_clicks), 0)
    , 2)                        AS cpc,

    ROUND(
        SUM(total_conversions) * 100.0 /
        NULLIF(SUM(total_clicks), 0)
    , 2)                        AS conversion_rate

FROM ppc_campaigns
WHERE status = 'active'
  AND keyword IS NOT NULL
GROUP BY keyword
ORDER BY conversion_rate DESC;

Output:

keyword                | total_spend | total_clicks | conversions | cpc  | conversion_rate
-----------------------|-------------|--------------|-------------|------|----------------
food delivery dhaka    | 20000       | 10000        | 500         | 2.00 | 5.00%
burger delivery dhaka  | 8000        | 3200         | 128         | 2.50 | 4.00%
online food order      | 10000       | 3000         | 60          | 3.33 | 2.00%

"food delivery dhaka" keyword সবচেয়ে বেশি conversion দিচ্ছে। এই keyword এ আরো বেশি invest করা উচিত।


১০. Python দিয়ে PPC Analyze করা

import pandas as pd
import psycopg2

conn = psycopg2.connect(
    host="your-host",
    database="your_db",
    user="your_user",
    password="your_password"
)

query = """
    SELECT
        campaign_name,
        platform,
        campaign_type,
        keyword,
        bid_amount,
        total_spend,
        total_impressions,
        total_clicks,
        total_conversions
    FROM ppc_campaigns
    WHERE status = 'active'
"""

df = pd.read_sql(query, conn)
conn.close()

# =============================================
# CALCULATE ALL METRICS
# =============================================
df['cpc'] = (
    df['total_spend'] / df['total_clicks']
).round(2)

df['ctr'] = (
    df['total_clicks'] * 100 / df['total_impressions']
).round(2)

df['conversion_rate'] = (
    df['total_conversions'] * 100 / df['total_clicks']
).round(2)

df['cost_per_conversion'] = (
    df['total_spend'] / df['total_conversions']
).round(2)

print("============================================")
print("         PPC CAMPAIGN REPORT               ")
print("============================================")
print(df[[
    'campaign_name',
    'platform',
    'total_spend',
    'cpc',
    'ctr',
    'conversion_rate',
    'cost_per_conversion'
]].to_string(index=False))

# =============================================
# BEST AND WORST CAMPAIGNS
# =============================================
best_campaign = df.loc[
    df['conversion_rate'].idxmax(), 'campaign_name'
]
worst_campaign = df.loc[
    df['cost_per_conversion'].idxmax(), 'campaign_name'
]

print(f"\n🌟 Best Campaign  : {best_campaign}")
print(f"⚠️  Worst Campaign : {worst_campaign}")

# =============================================
# BUDGET EFFICIENCY CHECK
# =============================================
print("\n===== Budget Efficiency =====")
for _, row in df.iterrows():
    efficiency = "✅ Good" if row['conversion_rate'] > 3 else "⚠️ Needs Work"
    print(
        f"{row['campaign_name']:<25} | "
        f"Conv Rate: {row['conversion_rate']}% | "
        f"{efficiency}"
    )

Output:

============================================
         PPC CAMPAIGN REPORT
============================================
campaign_name         platform  total_spend   cpc   ctr  conv_rate  cost_per_conv
FoodBD App Install    google      20000.00    2.00  4.00      5.00%          40.00
FoodBD Brand Aware    facebook    15000.00    3.00  2.50      3.00%         100.00
FoodBD Ramadan        google      10000.00    3.33  1.50      2.00%         166.67

🌟 Best Campaign  : FoodBD App Install
⚠️  Worst Campaign : FoodBD Ramadan

===== Budget Efficiency =====
FoodBD App Install        | Conv Rate: 5.0% | ✅ Good
FoodBD Brand Aware        | Conv Rate: 3.0% | ✅ Good
FoodBD Ramadan            | Conv Rate: 2.0% | ⚠️  Needs Work

১১. সব Metrics একসাথে — Big Picture

PPC Campaign চালালাম
        │
        ▼
১,০০,০০০ Impression    ← CPM দিয়ে measure করি
        │
        ▼
    ২,০০০ Clicks        ← CTR = 2%, CPC দিয়ে measure করি
        │
        ▼
     ১০০ Conversions    ← Conversion Rate = 5%
        │
        ▼
  ৳৫০,০০০ Revenue      ← ROAS/ROI দিয়ে measure করি

১২. Common Mistakes ⚠️

Mistake সমস্যা সমাধান
শুধু Click দেখা Click বেশি হলেই Revenue নাও হতে পারে Conversion Rate ও দেখো
Budget limit না রাখা অনেক বেশি টাকা খরচ হয়ে যায় Daily budget set করো
Wrong keyword ভুল মানুষের কাছে Ad যায় Specific keyword use করো
Landing page ignore করা Click এর পরে মানুষ চলে যায় Landing page optimize করো
সব platform এ একসাথে কোনোটাই ভালোভাবে হয় না একটা দিয়ে শুরু করো

সারসংক্ষেপ 🎯

বিষয় মূল কথা
PPC কী Advertising model — শুধু click এ টাকা দাও
CPC এর সাথে পার্থক্য      PPC = System, CPC = সেই system এর metric
কীভাবে কাজ করে Auction → Ad দেখায় → Click → টাকা কাটে
Types Search, Display, Social, Shopping
Key Terms Keyword, Bid, Quality Score, Landing Page, Ad Rank
Measure করো CPC, CTR, Conversion Rate, Cost per Conversion

তিনটা Ad Model মনে রাখো এভাবে 🧠

PPC  → Click করলে টাকা দাও   (Pay Per Click)
CPM  → ১০০০ জন দেখলে টাকা দাও (Cost Per Mille)
CPC  → প্রতি click এ কত টাকা গেছে (Metric)


Powered by Blogger.