Program Features Reference

⚠️

Documentation Disclaimer

This documentation is not exhaustive and does not guarantee system behavior. Integrators are responsible for testing against actual API responses. See Documentation Disclaimer for full details.

Program Features Reference

Program features allow fine-grained control over how a CPC campaign targets, tracks, and presents ads. Features are configured separately from program creation via the Program Feature API.

Table of Contents


Overview

Features are set via a dedicated endpoint after a program is successfully created:

POST https://partner-api.yelp.com/program/{program_id}/features/v1

Full documentation for request/response format is in the Program Feature API reference.


When to Set Features

Features can only be set after the program reaches COMPLETED status — you need a valid program_id first. Poll GET /v1/reseller/status/{job_id} until the creation job completes, then apply features.

Features are never inherited or carried over automatically. If a budget change results in a new program being created, all features reset and must be re-applied explicitly on the new program_id. See Campaign Management Behavior & Nuances for details.


Available Features

Feature IdentifierDescription
STRICT_CATEGORY_TARGETINGRestricts ad delivery to explicitly targeted categories only
CUSTOM_LOCATION_TARGETINGTargets specific geographic locations instead of default radius
CUSTOM_RADIUS_TARGETINGSets a custom radius around the business location
AD_SCHEDULINGLimits ad delivery to specific hours/days
AD_GOALSets the consumer CTA (calls, website clicks, or Yelp-optimized)
LINK_TRACKINGAppends UTM/tracking parameters to ad traffic URLs
CALL_TRACKINGAssigns a tracked phone number at the program level
CUSTOM_AD_TEXTSets custom ad copy (where supported)
CUSTOM_AD_PHOTOSets a custom ad photo (where supported)
NEGATIVE_KEYWORD_TARGETINGExcludes specific keywords from triggering the ad

Strict Category Targeting (SCT)

By default, Yelp expands campaigns into adjacent and implied categories. For example, a "catering" campaign may serve on "weddings" or "parties" pages. SCT disables this expansion and restricts delivery to only the explicitly targeted categories.

Limitations:

  • SCT only enforces strict targeting in search and business-details ad placements
  • RaX (Retargeting) and RAQ placements ignore SCT entirely — they always use loose category expansion regardless of this setting
  • SCT is configured per program, not per business

Custom Location Targeting (CLT)

Overrides the default radius-based geotargeting with a specific list of locations.

Rules:

  • Accepts up to 25 locations within the US
  • Supported types: zip codes, cities, neighborhoods, counties, state names
  • CLT replaces default targeting — it does not supplement it
  • CLT and Custom Radius Targeting cannot be active simultaneously — setting one removes the other
  • Postal codes are the most reliable input; city and neighborhood names can be ambiguous and are normalized by Yelp — always log the response to confirm actual targeting applied

Custom Radius Targeting

Sets a custom delivery radius around the business's physical location instead of using Yelp's default category-based radius.

Cannot be active at the same time as Custom Location Targeting.


Ad Scheduling

Restricts ad delivery to specific days and hours. Use the business hours API to retrieve current hours for a location before configuring scheduling.


Ad Goal

Controls the consumer-facing call to action on the ad unit:

ValueConsumer CTA Shown
GET_CALLS"Call business"
WEBSITE_CLICKS"Visit website"
OPTIMIZEYelp-optimized mix of both

Setting AD_GOAL to WEBSITE_CLICKS routes consumers directly to the business's external website from the search ad, bypassing the Yelp business page.


Link Tracking

Appends query parameters to URLs for traffic attributed to the CPC program. This applies only to paid ad traffic — organic traffic uses the URL set in the Data Ingestion API.

Tracking can be applied to:

  • website URL
  • menu_url
  • CTA URL

Example payload:

{"LINK_TRACKING": {"website": "source=yelpweb"}}

Results in ?source=yelpweb appended to the business's website URL for ad-attributed clicks.


Call Tracking

Assigns a tracked phone number for the CPC program. Available at two levels:

LevelScopeSet Via
Location-levelAll traffic (paid + organic)metered_phone_number in Data Ingestion API
Program-levelCPC ad traffic onlyCALL_TRACKING in Program Feature API

Important Constraints

  • Features are not inherited when a new program is created (including budget-change-triggered recreations)
  • Features apply to a single program_id — they are not shared across programs for the same business
  • CLT and Custom Radius Targeting are mutually exclusive — setting one deletes the other

Did this page help you?