প্রচারণার খসড়া এবং পরীক্ষা-নিরীক্ষা

Google বিজ্ঞাপন স্ক্রিপ্টগুলি প্রচারাভিযানের খসড়া এবং পরীক্ষাগুলিকে সমর্থন করে, যা অনুসন্ধান এবং প্রদর্শন নেটওয়ার্ক প্রচারাভিযানের পরিবর্তনগুলি প্রস্তুত এবং পরীক্ষা করতে ব্যবহৃত হয়৷

একটি খসড়া হল একটি বিদ্যমান প্রচারাভিযানের একটি ক্লোন যা তার নিজস্ব বিজ্ঞাপনগুলি পরিবেশন করবে না, তবে মূল প্রচারাভিযানের পরিবর্তন না করেই পরিবর্তনগুলি মঞ্চস্থ করতে ব্যবহার করা যেতে পারে৷ পর্যায়ক্রমে পরিবর্তনগুলি বেস প্রচারে প্রয়োগ করা যেতে পারে।

একটি পরীক্ষা মূল প্রচারণার সমান্তরালে একটি কাস্টমাইজযোগ্য প্রচারাভিযান চালায় এবং ট্রাফিকের একটি নির্দিষ্ট শতাংশে বিজ্ঞাপন দেখায়। পরীক্ষার ফলাফলের উপর ভিত্তি করে, আপনি মূল প্রচারাভিযানে পরিবর্তনগুলি প্রয়োগ করতে পারেন, পরীক্ষাটিকে একটি স্বাধীন প্রচারাভিযানে শাখা দিতে পারেন, অথবা পরীক্ষামূলক প্রচারাভিযান ত্যাগ করতে পারেন৷

এই নির্দেশিকাটি একটি স্ক্রিপ্টে খসড়া এবং পরীক্ষা-নিরীক্ষার সাথে কাজ করার জন্য মৌলিক কর্মপ্রবাহ ব্যাখ্যা করে।

খসড়া

একটি খসড়া তৈরি করুন

একটি ড্রাফ্ট DraftBuilder ব্যবহার করে এবং একটি অনন্য নাম প্রদান করে একটি বিদ্যমান ভিত্তি প্রচার থেকে একটি খসড়া তৈরি করা হয়। বেস প্রচারাভিযানটি অবশ্যই একটি অনুসন্ধান, প্রদর্শন সম্প্রসারণ সহ অনুসন্ধান নেটওয়ার্ক প্রচারাভিযান, বা প্রদর্শন প্রচারাভিযান (ডিসপ্লে নেটওয়ার্কের জন্য মোবাইল অ্যাপ প্রচারাভিযান ব্যতীত) হতে হবে এবং এটির একটি ভাগ করা বাজেট থাকা উচিত নয়৷

const campaign = AdsApp.campaigns()
    .withCondition(`campaign.name = "${campaignName}"`)
    .get()
    .next();

const draftBuilder = campaign.newDraftBuilder()
    .withName("INSERT_DRAFT_NAME_HERE")
    .build();

const draft = draftBuilder.getResult();

DraftBuilder.build() একটি DraftOperation প্রদান করে, স্ক্রিপ্টের একটি সাধারণ অপারেশন। আরো বিস্তারিত জানার জন্য নির্মাতাদের জন্য আমাদের গাইড দেখুন।

একটি draft তার বেস ক্যাম্পেইন আইডি এবং ড্রাফ্ট আইডির সমন্বয় দ্বারা স্বতন্ত্রভাবে চিহ্নিত করা হয়। আরও তথ্যের জন্য DraftSelector.withIds() দেখুন।

খসড়া প্রচারণার ব্যবস্থা করুন

একটি draft বস্তু একটি বেস প্রচারাভিযান এবং একটি খসড়া প্রচারাভিযানের সাথে সম্পর্কিত। বেস ক্যাম্পেইনের আপডেটগুলি স্টেজ করার জন্য, আপনি ড্রাফ্ট ক্যাম্পেইনের মাধ্যমে পরিবর্তনগুলি প্রচার করেন।

একটি খসড়া প্রচারাভিযান, অন্যান্য প্রচারাভিযানের মতো, এর বিভিন্ন বৈশিষ্ট্য যেমন মানদণ্ড, বিজ্ঞাপন গোষ্ঠী, বিড এবং বিজ্ঞাপনগুলি পেতে এবং সেট করার পদ্ধতি রয়েছে৷

const draftCampaign = draft.getDraftCampaign();

draftCampaign.setAdRotationType("CONVERSION_OPTIMIZE");
draftCampaign.createNegativeKeyword("shoes");

মনে রাখবেন যে বিজ্ঞাপন নীতি পরীক্ষাগুলি একটি খসড়া প্রচারের জন্য করা হয় ঠিক যেমনটি বেস প্রচারের জন্য করা হয়৷ আপনি নীতি লঙ্ঘনকারী বিজ্ঞাপন আছে এমন একটি খসড়া প্রচারাভিযান থেকে পরীক্ষা চালাতে পারবেন না।

খসড়া কার্যকর করুন

খসড়া প্রচারাভিযানের ব্যবস্থা করার পরে, আপনি নিম্নলিখিতগুলির মধ্যে একটি করতে পারেন:

  1. আপনি পরিবর্তনগুলি ব্যবহার করতে না চাইলে, আপনি কেবল খসড়াটি সরাতে পারেন৷ ড্রাফ্ট অপসারণ করা অপরিবর্তনীয়, তবে এটি এখনও Google Ads UI-এর ড্রাফ্ট ট্যাবে সমস্ত খসড়ার অধীনে দেখা যেতে পারে।

    draft.remove();
    
  2. আপনি যদি খসড়ায় আপনার করা পরিবর্তনগুলি রাখার সিদ্ধান্ত নেন, আপনি এগিয়ে যেতে এবং সেগুলি প্রয়োগ করতে পারেন:

    draft.startApplying();
    

    এই পদ্ধতিটি বেস ক্যাম্পেইনে আপডেটগুলি প্রয়োগ করার প্রক্রিয়া শুরু করে, তাই ড্রাফ্টটিতে Google Ads UI-তে আবেদনের অবস্থা... যাইহোক, প্রক্রিয়াটি সম্পূর্ণ হলে পদ্ধতিটি আপনাকে অবহিত করবে না

  3. আপনি যদি প্রথমে আপনার পরিবর্তনগুলি পরীক্ষা করতে চান তবে আপনি একটি পরীক্ষা তৈরি করতে খসড়াটি ব্যবহার করতে পারেন৷

পরীক্ষা-নিরীক্ষা

একটি পরীক্ষা তৈরি করুন

একটি experiment একটি খসড়া অনুরূপ, এবং একটি বেস প্রচারাভিযান থেকে তৈরি করা হয়. আপনি একটি ExperimentBuilder দিয়ে একটি experiment তৈরি করেন। এটি স্বয়ংক্রিয়ভাবে দুটি "বাহু" সহ একটি পরীক্ষা তৈরি করবে যা পরীক্ষার বিভিন্ন অংশকে উপস্থাপন করে। একটি বাহুতে (কন্ট্রোল আর্ম বলা হয়) বেস প্রচারাভিযান ধারণ করবে, এবং অন্যটিতে (চিকিত্সা আর্ম বলা হয়) একটি নতুন খসড়া প্রচারাভিযান থাকবে যা আপনি পরীক্ষার সময়সূচী করার আগে উপরের খসড়াটির পদক্ষেপ অনুসারে কাস্টমাইজ করবেন।

একটি পরীক্ষা তৈরি করার সময়, বিল্ডারে নিম্নলিখিত সমস্ত সেট করতে ভুলবেন না:

withCampaign
আপনি যে প্রচারণার উপর ভিত্তি করে পরীক্ষা করতে চান।
withTrafficSplitPercent
ট্রাফিকের কতটুকু যাবে পরীক্ষা বাহুতে। 50% এর জন্য, 50 উল্লেখ করুন।
withStartDate এবং withEndDate
প্রচারাভিযানের শুরু এবং শেষ তারিখ নির্দিষ্ট করে। YYYYMMdd ফরম্যাটে উল্লেখ করুন।
withType
আপনি কোন নেটওয়ার্ক ব্যবহার করছেন তার উপর নির্ভর করে হয় SEARCH_CUSTOM বা DISPLAY_CUSTOM
withSuffix
একটি প্রত্যয় নির্দিষ্ট করে যা চিকিত্সা প্রচারের নামে যোগ করা হবে যখন এটি তৈরি করা হয়।
withGoals
এই পরীক্ষার লক্ষ্য নির্দিষ্ট করে। এটি তৈরি করার সময় আপনার লক্ষ্যগুলি কী ছিল তা কেবল নিজের কাছে একটি অনুস্মারক৷ একটি ভাল ডিফল্ট মান হল [{metric: 'CLICKS', direction: 'INCREASE'}]

ট্রাফিক বিভাজন শতাংশ নির্ধারণ করে যে ট্রাফিকের কোন অংশে বেস ক্যাম্পেইনের পরিবর্তে পরীক্ষামূলক প্রচার থেকে বিজ্ঞাপন দেখানো হবে। এই কারণে, প্রতিটি বেস ক্যাম্পেইন একবারে শুধুমাত্র একটি চলমান পরীক্ষা থাকতে পারে।

const experiment = AdsApp.newExperimentBuilder()
  .withCampaign(campaign)
  .withTrafficSplitPercent(50)
  .withStartDate("20230501")
  .withEndDate("20230601")
  .withType("SEARCH_CUSTOM")
  .withSuffix("experiment")
  .withGoals([{metric: 'CLICKS', direction: 'INCREASE'}])
  .build();

// The experimentCampaign represents the customizeable draft.
const experimentCampaign = experiment.getExperimentCampaign();

খসড়ার বিপরীতে, পরীক্ষাগুলি একটি একক আইডি দ্বারা স্বতন্ত্রভাবে চিহ্নিত করা হয়। আরও তথ্যের জন্য ExperimentSelector.withIds() দেখুন।

পরীক্ষামূলক প্রচারণার ব্যবস্থা করুন

একটি draft মতো, একটি experiment নিজেই একটি প্রচারণা নয়৷ বরং, এটি বেস প্রচারণা, খসড়া এবং পরীক্ষামূলক প্রচারণার সাথে সম্পর্কিত। নিম্নলিখিত ব্যতিক্রমগুলি সহ একটি পরীক্ষামূলক প্রচারণার ক্ষেত্রগুলি পরিবর্তনযোগ্য:

  • নাম
  • অবস্থা
  • শুরুর তারিখ
  • শেষ তারিখ
  • বাজেট
const experimentCampaign = experiment.getExperimentCampaign();

// Will succeed.
experimentCampaign.setAdRotationType("ROTATE_FOREVER");
experimentCampaign.createNegativeKeyword("sneakers");

// Will fail.
experimentCampaign.setName("INSERT_EXPERIMENT_NAME_HERE");

পরীক্ষার নাম, শুরুর তারিখ এবং শেষ তারিখে পরিবর্তন করা যেতে পারে, তারপরে তারা পরীক্ষামূলক প্রচারে প্রচার করবে।

// Will succeed.
experiment.setName("INSERT_EXPERIMENT_NAME_HERE");

// Will succeed if date is acceptable.
const date = "20220601";
experiment.setStartDate(date);

পরীক্ষা শুরু করতে, experiment.startScheduling() এ কল করুন। এটি একটি অ্যাসিঙ্ক্রোনাস প্রক্রিয়া, কারণ এটি বেস ক্যাম্পেইন থেকে সমস্ত সেটিংস কপি করতে হবে।

পরীক্ষা শেষ হওয়ার পর

আপনার পরীক্ষা শেষ হলে, আপনার কাছে কয়েকটি বিকল্প থাকবে। আমরা পরীক্ষাটি সম্পূর্ণভাবে শেষ করতে দেওয়ার পরামর্শ দিই যাতে এটি বিজ্ঞাপন দেখানো বন্ধ করে দেয় তবে আপনি এখনও এটির সাথে ইন্টারঅ্যাক্ট করতে পারেন। একটি সমাপ্ত পরীক্ষা এখনও সরানো, প্রয়োগ করা বা স্নাতক করা যেতে পারে এবং এর প্রচারণার কর্মক্ষমতা পরিসংখ্যান এখনও অ্যাক্সেসযোগ্য।

experiment.finish();
const stats = experimentCampaign.getStatsFor("INSERT_TIME_PERIOD_HERE");
  • আপনি পরিসংখ্যানের উপর ভিত্তি করে পরীক্ষায় অসন্তুষ্ট হলে, আপনি পরীক্ষাটি সরাতে পারেন, যা পরীক্ষার প্রচারাভিযানকেও সরিয়ে দেয়। পরীক্ষাটি অপসারণ করা অপরিবর্তনীয়, তবে এটি এখনও Google বিজ্ঞাপন UI-এর পরীক্ষা ট্যাবে সমস্ত পরীক্ষা-নিরীক্ষার অধীনে দেখা যেতে পারে।

    experiment.remove();
    
  • আপনি যদি পরীক্ষার ফলাফলের সাথে সন্তুষ্ট হন তবে আপনার কাছে দুটি বিকল্প রয়েছে:

    1. আপনি পরিবর্তনগুলি প্রয়োগ করা শুরু করতে পারেন এবং ড্রাফ্টের মতোই, প্রক্রিয়াটি সম্পূর্ণ হলে আপনাকে জানানো হবে না।

      experiment.startApplying();
      
    2. আপনি বেস প্রচারাভিযানকে প্রভাবিত না করেই পরীক্ষামূলক প্রচারাভিযানটিকে একটি স্বাধীন, সম্পূর্ণ-অপারেটিং প্রচারাভিযান হিসেবে প্রতিষ্ঠা করতে পারেন। গ্র্যাজুয়েশন নামে পরিচিত এই প্রক্রিয়াটি অবিলম্বে সম্পন্ন হয় এবং একটি নতুন বাজেট সেট করতে হবে।

      const budget = AdsApp.budgets()
          .withCondition(`campaign_budget.id = ${budgetId}`)
          .get()
          .next();
      
      experiment.graduate(budget);
      

      নতুন প্রচারাভিযান আর বেস ক্যাম্পেইনের সাথে বাজেট ভাগ করতে পারবে না, যার জন্য একটি নতুন বাজেটের প্রয়োজন। স্নাতক প্রচারাভিযানগুলি সাধারণ প্রচারাভিযানের মতোই যে তাদের সমস্ত ক্ষেত্র পরিবর্তনযোগ্য এবং তারা আরও খসড়া এবং পরীক্ষার জন্য একটি বেস প্রচারাভিযান হিসাবে কাজ করতে পারে৷

অন্যান্য বিবেচ্য বিষয়

ভিত্তি সত্তা

Google বিজ্ঞাপন স্ক্রিপ্টে খসড়া এবং পরীক্ষা-নিরীক্ষার প্রবর্তন বেস সত্তার ধারণারও পরিচয় দেয়। খসড়া এবং পরীক্ষামূলক প্রচারাভিযান এবং তাদের মধ্যে থাকা বিজ্ঞাপন গোষ্ঠীগুলি তাদের মূল বেস প্রচারাভিযান থেকে আলাদা, এই কারণেই Campaign এবং AdGroup কাছে এখন তাদের বেস প্রচারাভিযান এবং বিজ্ঞাপন গোষ্ঠী অ্যাক্সেস করার পদ্ধতি রয়েছে: getBaseCampaign() এবং getBaseAdGroup()

বেস ক্যাম্পেইন বা বিজ্ঞাপন গোষ্ঠীর দ্বারা ডাকা হলে এই পদ্ধতিগুলি কলিং সত্তাকে ফেরত দেয়। প্রচারাভিযান এবং বিজ্ঞাপন গোষ্ঠীর মধ্যে থাকা সত্তা, যেমন কীওয়ার্ড এবং বিজ্ঞাপনগুলিকেও এই ধরনের পদ্ধতি দেওয়া হয়েছে।

বেস এন্টিটির ট্র্যাক রাখতে সাহায্য করার জন্য, প্রচারাভিযানগুলিকে isBaseCampaign() , isDraftCampaign() , এবং isExperimentCampaign() পদ্ধতি দেওয়া হয়েছে৷

নতুন Campaign.draftCampaigns() এবং Campaign.experimentCampaigns() পদ্ধতিগুলি আপনাকে সমস্ত খসড়া এবং পরীক্ষামূলক প্রচারাভিযান অ্যাক্সেস করতে দেয় যেগুলির বেস ক্যাম্পেইন হিসাবে কলিং প্রচারাভিযান রয়েছে৷ যাইহোক, আপনি CampaignSelector.withCondition() দিয়ে খসড়া প্রচারাভিযান নির্বাচন করতে পারবেন না; পরিবর্তে AdsApp.drafts() ব্যবহার করুন।

ত্রুটি পরিচালনা

যখন স্ক্রিপ্ট চালানো হয় তখন খসড়া এবং পরীক্ষা-নিরীক্ষার সাথে জড়িত নিম্নলিখিত পদ্ধতিগুলি এগিয়ে যায়, কিন্তু অ্যাসিঙ্ক্রোনাসভাবে ব্যর্থ হতে পারে:

  • Draft.startApplying()
  • Experiment.startApplying()
  • Experiment.startScheduling()

এই ক্রিয়াকলাপগুলি সফল কিনা তা পরীক্ষা করার জন্য আপনাকে অপেক্ষা করা উচিত। Google Ads UI যথাক্রমে startApplying() এবং startScheduling() এর সফল সমাপ্তির পরে প্রয়োগ করা বা সক্রিয় অবস্থা দেখায়। এবং, এটি প্রয়োগ করতে অক্ষম বা ব্যর্থতার পরে তৈরি করতে অক্ষম নির্দেশ করে, আপনাকে ত্রুটিগুলি দেখতে ক্লিক করতে দেয়।

এটাও সম্ভব যে কিছু পদ্ধতি প্রিভিউ স্টেজে ব্যর্থ হয়, কিন্তু সেগুলি চালানোর পরে সফল হয়; উদাহরণস্বরূপ, একটি খসড়া তৈরি করার পরে:

const draftCampaign = draft.getDraftCampaign();
draftCampaign.createNegativeKeyword("shoes"); // Will fail in preview.

এটি পূর্বরূপ মোডে ব্যর্থ হবে কারণ এটি অবিলম্বে খসড়া প্রচারাভিযানে অ্যাক্সেস করতে পারবে না।

একইভাবে, একটি পরীক্ষা তৈরি করা এবং অবিলম্বে এর খসড়া প্রচারাভিযান আনার চেষ্টা করা প্রিভিউ মোডে ব্যর্থ হবে, যেহেতু খসড়াটি আসলে তৈরি করা হয়নি৷

এই কারণে, আপনার স্ক্রিপ্টগুলি চালানোর পরে তাদের তালিকার নীচের লগগুলি পরীক্ষা করুন এবং একটি ব্যর্থ-ইন-প্রিভিউ স্ক্রিপ্ট নিয়ে এগিয়ে যান শুধুমাত্র যদি আপনি বিশ্বাস করেন যে কারণটি প্রিভিউ মোডে সীমাবদ্ধতার কারণে।