> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryprofound.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Keywords

> Return the keywords you bid on in Google Ads with quality and efficiency metrics

The **Keywords node** returns the keywords you're actively bidding on in Google Ads, paired with quality score, post-click experience signals, and derived efficiency metrics over a configurable date range.

## When to use this node

Use the Keywords node for tasks such as:

* **Bid management:** identify which keywords are spending efficiently and which are wasting budget
* **Quality score audits:** surface keywords with low quality scores dragging down overall ad performance
* **Identifying underperformers:** flag keywords with high cost but low CVR (conversion rate), CPA (cost per acquisition), or ROAS (return on ad spend)
* **Cross-channel visibility audits:** cross-reference keywords you're bidding on against Profound AI Visibility data to find where you're paying for clicks you already win organically

## Node configuration

### Google Integration (required)

Select a previously connected Google account, or click **+ Add integration** and follow the prompts to connect one. This is a one-time setup. Once you add an integration, it's available in all future sessions until you remove it in Profound **Settings > Integrations**.

### Google Ads Account (required)

Select the Google Ads customer account from the dropdown. The picker handles both Manager accounts and sub-account selection.

### Campaigns

Select the ad campaigns from the dropdown. To include every active campaign, leave the field empty.

### Ad Groups

Select the ad groups from the dropdown. To include every ad group within selected campaigns, leave the field empty. To see the ad group options in the dropdown, select at least one campaign in the **Campaigns** field.

### Date Range (required)

Select the date range to pull keyword performance over. Choose from available presets (today, yesterday, last 7 days, and others) or set a custom range.

### Output Fields

Select the fields to include in the output. The options include metrics and campaign details, such as Impressions, Clicks, Conversions, Campaign Type, and Bid Strategy Type. To return output unfiltered, leave this field empty.

### Output Label

Enter a descriptive label for this step's output, for example `keyword_data` or `keyword_performance_last_7_days`. The label becomes the variable name you reference in later nodes.

## Output

The node outputs JSON data containing your active keywords, along with:

* the keyword text

* keyword quality score

* post-click experience

* performance metrics: CTR, CPC, CPA, and others

**Pass the output to:**

* [Prompt LLM](/agents/nodes/prompt-llm) for AI analysis: quality score audit reports, bid management recommendations, underperformer identification
* **​Prompt Responses node** for the most powerful use: cross-reference keywords you're bidding on against AI prompt answer data to find queries where you're paying for traffic you already win organically, or topics with strong AI presence where you're not yet bidding
* **Google Sheets (Write Row) node** to build a keyword performance tracker and log results over time for trend analysis

## Example usage: Cross-channel keyword visibility audit

Set up an Agent to find where you're paying for clicks you already win organically in AI answers, and save the report to a Profound Document. Here is the example structure:

**1. Keywords node**

* Select your **Google Integration** and set **Google Ads Account** to your Google Ads account
* Set **Date Range** to Last 7 days
* Set **Campaigns**, **Ad Groups,** and **Output Fields** filters as needed
* Set **Output label** to `bidded_keywords`

**2.** [Visibility Score](/agents/nodes/data/visibility-score) **node**

* Set the **Metric** to **Visibility Score**
* Set **Date range** to Last 4 weeks
* Click **+ Add filter > Topics**, and select the topics you want to measure your visibility by

<Tip>Use **Agent Assistant** to generate the list of keywords from the Keyword node output data and pass it on to Topics field as a variable.</Tip>

* Add **Topics as a Dimension** option to make the output a separate visibility score per topic rather than a single aggregated value
* Set **Output label** to `ai_visibility_data`

**3. Code node**

* Use **Agent Assistant** to add custom logic to cross-reference `bidded_keywords` with `ai_visibility_data`, match paid keywords whose text contains an AI-visible asset name, sum the overlap spend, and rank the underperforming keywords by cost
* Set **Output label** to `cross_reference_result`

**4.** [Prompt LLM](/agents/nodes/prompt-llm) **node**

* Enter the prompt:

  ```text expandable wrap theme={null}
  Produce a cross-channel visibility audit report from {{cross_reference_result}}.

  Sections:
  - Executive Summary — overlap % of paid spend vs. organic AI 
  wins + headline recommendation.
  - Spend at Risk — table: Total Paid Spend | Overlap Spend | Overlap %.
  - Top Overlap Keywords — table of top 15: Keyword | Cost | Clicks | 
  Conversions | Matched Asset | AI Visibility. Follow with 3–5 callouts for strongest 
  cut candidates (high cost + high AI visibility + low conversions).
  - Recommended Actions — 4–6 prioritized bullets with specifics 
  (e.g. "Pause exact-match on [keyword] — savings: $X/period").
  ```
* Set **Output label** to `cross_channel_audit`

<Tip>Check out our [prompt best practices](/agents/how-tos/prompt-llm-best-practices) guide for the Prompt LLM node.</Tip>

**5. Profound Docs - Create Doc node**

* Enter any document text you need in the **Initial Content** field, and use `cross_channel_audit` variable
* Enter **Document Name**, for example “2026-05-01 Cross-channel keyword audit”

## Best practices

### Scope by campaign and ad group

Pulling all keywords data from all campaigns and ad groups at once can return an unmanageably large dataset. Use the built-in campaign and ad group filtering to scope results before passing them to subsequent nodes.

Use [List Campaigns](/integrations/google-ads/list-campaigns) node to discover the active campaign set first, map campaign names to IDs, or fan out the workflow across every campaign dynamically.

### Pair with Profound data

Keyword Performance is useful on its own, but combined with Profound data nodes (such as **Prompt Responses**, [Visibility Score](/agents/nodes/data/visibility-score), and so on), it becomes a cross-channel strategy tool. There's no clear way to tell which of your paid search terms are also surfacing in AI answers without connecting both data sources.

### Use Agent Assistant

Working with both Keywords data and Profound AI visibility data can have a learning curve. Use **Agent Assistant** to build a working Agent faster, and then edit the Agent as needed to better match your use case.
