New feature

Demand Gen campaigns are now in HireOtto

Demand Gen support is live.

This is the first version — it covers the full campaign build flow, but I expect it'll update based on your feedback.

At a glance

Create Demand Gen campaigns

You can create a Demand Gen campaign shell with a goal and budget. Supported goals: Conversions, Clicks, Conversion Value, YouTube Engagements. Optional bid targets: target CPA, target ROAS, or target CPC.

Campaigns are created paused by default. Review before enabling.

Add ad groups with channel controls

Demand Gen ad groups control which inventory your ads run on. Two approaches:

Preset: ALL_CHANNELS (everything) or ALL_OWNED_AND_OPERATED_CHANNELS (YouTube, Discover, Gmail — no Display)

Explicit: pick exact channels — YouTube in-stream, in-feed, Shorts, Discover, Gmail, Display, Maps

You can also set location targeting, language, and audience at the ad group level.

Create assets and ads

Asset types: marketing images, square images, logo images, YouTube videos, text, CTAs

Ad types: single image, multi-asset, carousel, video/video responsive

For one-off ads, pass image URLs or YouTube video IDs inline. For shared creative libraries, create assets first and reuse them by resource name.

Inspect and update

Three new listing actions:

  • Get Demand Gen Campaign Settings — campaign goal, bidding, devices

  • Get Demand Gen Ad Group Settings — channel controls, locations, languages, audiences

  • Get Demand Gen Ads — ads and their creative asset references

Update actions enable updates to campaign settings, ad group channel strategy, ad status. Creative replacement is handled by creating a new ad and pausing the old one — that's how the API works, not a workaround.

Prompts

Example Prompts

Create a Demand Gen campaign called "[CAMPAIGN_NAME]" — $[BUDGET]/day, Maximize Conversions, target CPA $[CPA].
Add a Demand Gen ad group to campaign [CAMPAIGN_ID] — YouTube Shorts only, [LOCATION], English.
Create a single-image ad in ad group [ADGROUP_ID]:
  marketing image: [IMAGE_URL]
  square image: [SQUARE_URL]
  logo: [LOGO_URL]
  headlines: "[HEADLINES]"
  descriptions: "[DESCRIPTIONS]"
  business name: "[BUSINESS_NAME]"
  CTA: "Learn more"
  final URL: [URL]
Show me the channel settings for all Demand Gen ad groups in campaign [CAMPAIGN_ID].
Switch ad group [ADGROUP_ID] to YouTube Shorts and Gmail only.

Docs

Full workflow guide → Demand Gen campaigns with AI

If you're running Demand Gen for clients, try the build flow and reply with what broke or what's missing. That's what shapes what comes next.

— Suyash
Founder, HireOtto
HireOtto.com

Keep Reading