This node is a pure executor — all decision logic (rules, filtering) should be done upstream using KNIME nodes like Rule Engine, Row Filter, or Joiner.
Actions
Workflow Example
Preview Mode
Use Preview mode to review proposed changes before applying them. The output table will show what would happen without making any changes to your Google Ads account.
Duplicate & Conflict Detection
By default, the node queries existing keywords/negatives before processing to:
⚠️ Shared Negative Lists (Account/MCC Level)
When adding negatives to Account Shared Negative Lists or MCC Shared Negative Lists, the node performs full conflict detection by checking keywords in all campaigns linked to the shared list. This includes checking for conflicts with both positive and negative keywords at campaign and ad group levels.
⚠️ Important: Skip Duplicate Check Option
The "Skip Duplicate/Conflict Check" option in Advanced Settings disables all pre-execution queries for better performance. When enabled:
Use this option only when you're confident the keywords don't already exist, or for testing purposes.
Performance for Large Accounts
The node uses batched API queries to efficiently check for duplicates, even in accounts with thousands of ad groups and keywords. The batch size can be adjusted in Advanced Settings if needed (default: 100 ad groups per query).
Tip: Bulk Negative Uploads
This node works with any text input—not just search terms. You can bulk-add negative keywords from a seed list, CSV, or Excel file. Just provide a text column with the campaign/ad group resource names and the node will create the negatives for you. Common use cases: competitor brand terms, industry blacklists, or proven negatives from previous campaigns.
Choose whether to add terms as negative keywords or promote them to keywords.
Available options:
Choose where to add the negative keyword: campaign level, ad group level, or a shared negative keyword list.
Available options:
Match type for negative keywords.
Available options:
Match type for promoted keywords.
Available options:
Column containing the term text to add as keyword or negative keyword.
Column containing Google Ads campaign resource names (e.g., 'customers/123/campaigns/456'). Not required for shared list scope.
Column containing Google Ads ad group resource names (e.g., 'customers/123/adGroups/789'). Required for ad group negatives and keyword promotion.
Column containing the shared negative keyword list resource name (e.g., 'customers/123/sharedSets/456'). Use the 'Negative Keyword Lists' pre-built query in the Google Ads Query node to retrieve available lists.
Preview generates a report without changes. Apply executes the changes.
Available options:
When enabled, skips the pre-execution check for existing keywords and conflicts. This significantly improves performance but has important implications: (1) Duplicates will only be detected when the API returns an error. (2) Conflicts between negative and positive keywords will NOT be detected — negative keywords will be added even if they conflict with existing positive keywords, which can cause your ads to stop showing for those terms. Use only when you're confident the keywords don't already exist or for testing.
Number of ad groups/campaigns to query per API call when checking for existing keywords. Higher values reduce API calls but increase query size. For accounts with thousands of ad groups, a smaller batch size may be more reliable. Default of 100 works well for most accounts.
You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.
To use this node in KNIME, install the extension KNIME Python Extension Development (Labs) from the below update site following our NodePit Product and Node Installation Guide:
A zipped version of the software site can be downloaded here.
Deploy, schedule, execute, and monitor your KNIME workflows locally, in the cloud or on-premises – with our brand new NodePit Runner.
Try NodePit Runner!