GTM reportsOverviewFindings explorerInternal. Built from reviewed runs in reports/publish.

Google Ads audit · bold-reports

2026-11-12 15:47 · success · score 33· by sarathkumarvenkatesan · reviewed by sarathkumarvenkatesan on 2026-11-12· backend claude-code 2.1.322 (claude-opus-5-5)

Checklist: demand-gen/paid/ads-account-audit.md

Summary

Headline

The Bold Reports Google Ads account (boldreports.com, 7669175401, USD) has served nothing since 2026-10-01. Every non-removed campaign is paused. Spend between 2026-10-15 and 2026-11-11 was $0, against $3,800.45, 453 clicks and 4 conversions from 2026-09-17 to 2026-10-14 (-100%). The last spend day was 2026-10-01 ($26.75). The pause is older than the change history the API returns (about 30 days), so this run couldn't confirm who paused the campaigns or why. Confirm whether the pause is intended.

Most of the audit therefore checks the setup as it would run on relaunch, using the 25 campaigns that spent in the previous period. Targeting hygiene is mostly good: exact and phrase match, Presence geo, Search Partners and Display off, auto-apply off, no disapproved ads. Three issues should be fixed before any relaunch:

Score

33 / 100 (5 of 15 checked items passed; a warn counts as not passed; 1 item not checked)

Top 3 actions

  1. Confirm the account pause and fix conversion tracking before relaunch (B4, B3). The qualified-lead import keeps resending 14 expired events. Sales ops should correct the connector so it sends only fresh qualified leads. Then make QUALIFIED_LEAD the only primary bidding goal and set Complete_Signup to secondary. Owner: sales ops and the paid search lead.
  2. Add brand and student negatives (B6, A3). Attach a brand negative list ("bold reports", "boldreports", "bold report", "syncfusion bold reports") to every non-brand campaign. Add "student" and "students" to the "General Keywords" list. Decide whether to keep the "free" negative, given the 30-day trial and Community License.
  3. Clean up ad claims (C4, C1). Remove "Best Business Reporting Tool", "Best Reports Writer Tool" and "Trusted by Leading Companies", and source or remove "2K+ Reports Migrated" and "100+ Report Items Built-In". Have product marketing confirm the "No Per-Viewer Licensing" wording against the per-user / per-application model, and the use of competitor marks in headlines.

Findings

Ads account audit: bold-reports, boldreports.com (7669175401), 2026-11-12

Period: 2026-10-15 to 2026-11-11 (28 days), compared with 2026-09-17 to 2026-10-14. The account didn't serve in the current period, so the search-term, keyword, ad and landing-page evidence comes from the previous period. | Run by: Claude

ID Item Result Evidence Est. monthly waste Proposed fix
A1 Broad match without negatives Pass The 25 recently active campaigns use only exact and phrase match. Four enabled broad keywords ("migrate from ssrs" ×3, "ssrs replacement") sit in older paused SSRS campaigns on Maximize Conversions with no spend. n/a Before re-enabling the old SSRS campaigns, check their conversion volume or switch these keywords to phrase match.
A2 Search Partners and Display bleed Pass All 25 recently active Search campaigns have Search Partners and Display off. The paused "US - Enterprise Reporting" has both on. n/a Turn both off on "US - Enterprise Reporting" before re-enabling it.
A3 No student/free/job-seeker negatives Warn "General Keywords" (on all 25 campaigns) has free, tutorial(s), career(s), job(s), salary, course(s), crack, internship and torrent. It lacks student and students. "free" is negated even though there is a 30-day trial and a Community License. unknown Add student and students. The paid search lead decides on "free".
A4 Geo "presence or interest" Pass All 25 recently active campaigns use Presence. Thirteen older paused campaigns use Presence or interest. n/a Switch those 13 to Presence before re-enabling them.
A5 Search-term waste Warn Top 50 terms from the previous period reviewed. Generic or informational queries in Embedded & White Label had 0 conversions: "reporting tools" ($118.82 US/CA, $85.22 IN), "business report" ($93.01), "reporting tools list", "report maker", "business reports". "telerikreportviewer" ($26.32) ran in Developer & SDK. Embedded & White Label US & Canada: $846.27, 0 conversions. unknown Add informational negatives to Embedded & White Label and a telerik negative to Developer & SDK.
A6 Audience Network (Microsoft Ads) Not checked No Microsoft Ads data source was connected for this run. unknown Check manually in Microsoft Ads.
B1 Auto-applied recommendations Pass All 8 recommendation subscriptions are PAUSED. The only change event since 2026-10-14 is one asset created by INTERNAL_TOOL. Microsoft Ads was not checked. n/a None for Google Ads.
B2 PMax cannibalizing brand Warn Both PMax campaigns are paused with no spend. "US - SSRS Alternative - PMAX" negates "bold report" and "bold reporting" but not "bold reports" or "boldreports". The brand-list shared sets aren't applied. Brand impression share in the previous period was 0.9048. n/a Add the brand negatives or a brand exclusion before re-enabling.
B3 Wrong conversion goals Warn QUALIFIED_LEAD (offline upload) and SIGNUP (Complete_Signup) are both primary and biddable. All 4 conversions from 2026-09-17 to 2026-11-11 were Complete_Signup. unknown Keep QUALIFIED_LEAD primary and set SIGNUP to secondary once B4 works.
B4 Offline conversion import Fail ADS_DATA_CONNECTOR is NEEDS_ATTENTION, last upload 2026-11-10. Uploads on 2026-11-04 to 06 had 1 success and 13 failures each; 2026-11-07 to 10 had 0 of 14. Error EXPIRED_EVENT on 100% of events. Form click-ID capture can't be checked from the API. unknown Fix the connector so it stops resending expired events, then verify fresh uploads and form click-ID capture.
B5 CPA vs pricing model Warn 24 of 25 campaigns use Manual CPC. "Crystal Displacement - Target CPA" runs Maximize Conversions with no target. 4 conversions in 28 days. No targets are tied to the per-user and per-application offers. unknown Set separate targets per offer once qualified leads import. Make the campaign name match its bidding.
B6 Brand exclusion Fail None of the 24 recently active non-brand campaigns has a brand negative. "Exclude Globally 3" has "bold reports" but isn't attached. No leakage seen: all brand queries ($51.10) ran in the Brand campaign. n/a Attach a brand negative list to all non-brand campaigns.
C1 Competitor trademark issues Warn Sampled headlines use Stimulsoft, SAP Crystal Reports and SSRS / Report Builder marks. The tone is positive and factual, and everything is approved. The standalone headlines "Crystal Reports Viewer" and "SSRS Report Viewer" could read as the competitor's product. Permission is unverified. n/a Product marketing confirms use. Add "alternative" or "for" wording to standalone headlines.
C2 Landing page mismatch Warn Most ad groups map correctly (Crystal, SSRS, ERP, Stimulsoft, Brand → home, Brand commercial → pricing). RDL designer keywords go to /report-viewer/. One Crystal viewer ad goes to a blog post ($16.80). The buyer-fit audit was not run. unknown Repoint the RDL designer ad groups and the blog-post ad. Run the buyer-fit audit.
C3 Disapproved or limited ads Pass No enabled ad is disapproved, limited or area-of-interest-only. All 60 ads with impressions are approved. n/a None.
C4 Claims Fail No prices found. Unsourced claims: "Best Business Reporting Tool", "Best Reports Writer Tool", "Trusted by Leading Companies", "2K+ Reports Migrated", "100+ Report Items Built-In". "No Per-Seat Viewer License" and "No Per-Viewer Licensing" need checking against the per-user / per-application model. Only 5 RSAs were sampled. n/a Remove or source the claims, verify the licensing wording, then review every RSA.

Score

Proposed changes (need human approval before applying)

See "Proposed changes (need approval)" below.

Remember to add these results to the team's shared results log (location TBD).

Not checked

Proposed changes (need approval)

None of these has been applied. Each one needs approval from the paid search lead in chat.

  1. Account status: all campaigns paused since 2026-10-01 → confirm the pause is intended. If the plan is to relaunch, make changes 2–8 first. Reason: headline.
  2. ADS_DATA_CONNECTOR offline upload (Reports_Offline_Conversions - New): 14 expired events resent daily, with 0 successes since 2026-11-07 → fix the CRM connector so it sends only qualified leads inside the click-through window, then verify successful uploads. Reason: B4.
  3. Account conversion goals: SIGNUP and QUALIFIED_LEAD are both biddable → keep QUALIFIED_LEAD primary and set Complete_Signup to secondary, after change 2 is confirmed. Reason: B3.
  4. Brand negative list: none on the non-brand campaigns → attach a list with "bold reports", "boldreports", "bold report" and "syncfusion bold reports" to all 24 recently active non-brand campaigns. Also add "bold reports" and "boldreports" to "US - SSRS Alternative - PMAX". Reason: B6, B2.
  5. "General Keywords" shared list: no student or students → add both as phrase negatives. The paid search lead decides whether to keep the "free" phrase negative. Reason: A3.
  6. RSA copy (ads 762906406442, 818738147754, 817729456729, 821256494308, and any others like them): unsourced superlatives and claims, and licensing wording → remove "Best …" and "Trusted by Leading Companies", source or remove "2K+ Reports Migrated" and "100+ Report Items Built-In", and have product marketing confirm the "No Per-Viewer / Per-Seat Viewer License" wording. Add "alternative" wording to the standalone competitor-product headlines. Reason: C4, C1.
  7. Embedded & White Label campaigns (US & Canada, India, UK, Australia): informational close variants → add phrase negatives "business report", "business reports", "reports list" and "report maker". Developer & SDK US & Canada: add "telerik" as a negative. Reason: A5.
  8. Developer RDL Tooling ad groups (US & Canada, India): designer keywords land on /report-viewer/ → use the report designer page. Crystal Report Viewer ad 823034318874: blog-post URL → /crystal-reports-viewer-alternative/, or test the two. Reason: C2.
  9. "Crystal Displacement - Target CPA | US & Canada": Maximize Conversions with no target → set a target, or rename the campaign. Once qualified leads import, set separate targets for the per-user and per-application offers. Reason: B5.
  10. Older paused campaigns: 13 use Presence or interest, and "US - Enterprise Reporting" has Search Partners and Display on → set Presence and turn the networks off before re-enabling any of them. Reason: A2, A4.

Data sources

Findings

IDItemStatusSeverityEffortRecommendationChecklist
B4Offline conversion importneeds approval
The ADS_DATA_CONNECTOR upload status is NEEDS_ATTENTION, with 14 events. The last upload was 2026-11-10 15:56 (within 7 days). Daily summaries: 2026-11-04, -05 and -06 each had 1 successful and 13 failed; 2026-11-07 through 2026-11-10 each had 0 successful and 14 failed. The alert is error EXPIRED_EVENT with errorPercentage 1. The connector appears to resend the same 14 events, which are now outside the click-through conversion window. GCLID, GBRAID and WBRAID capture on forms can't be checked from the Ads API.
failhighMSales ops should check the connector query in the CRM. It should send only qualified leads whose click is still inside the conversion window, and stop resending expired events. Confirm that new qualified leads upload successfully, and verify that click IDs are stored on the trial and demo forms.demand-gen/paid/ads-account-audit.md#checklist
C4Claimsneeds approval
No prices appear in the 5 sampled RSAs. Claims with no source found in this run: 'Best Business Reporting Tool' and 'Best Reports Writer Tool' (Embedded & White Label India), 'Trusted by Leading Companies' (Crystal Displacement US/CA), '2K+ Reports Migrated' and '100+ Report Items Built-In' (SSRS Displacement Awareness US/CA). Licensing claims 'No Per-Seat Viewer License' (Crystal) and 'No Per-Viewer Licensing' (Stimulsoft) need checking against _reference/pricing-and-licensing.md, which describes Cloud as per user and On-Premises as per user or per application. '30-day free trial' matches the reference. Only 5 RSAs were checked.
failmediumMRemove the 'Best' superlatives and 'Trusted by Leading Companies' unless product marketing can source them. Source or remove '2K+ Reports Migrated' and '100+ Report Items'. Have product marketing confirm the per-viewer licensing wording against the pricing page. Then review every RSA.demand-gen/paid/ads-account-audit.md#checklist
B6Brand exclusionneeds approval
None of the 24 recently active non-brand campaigns has a brand negative ('bold reports', 'boldreports', 'bold report') at the campaign, ad group or attached shared-list level. Brand negatives exist only on older paused campaigns. 'Exclude Globally 3' contains 'bold reports' but is attached to 0 campaigns. No leakage was seen: all 5 brand search terms in the previous period ($51.10 total) ran in the Brand campaign. The non-brand campaigns use only exact and phrase keywords.
faillowSCreate or reuse a brand negative list ('bold reports', 'boldreports', 'bold report', 'syncfusion bold reports') and attach it to every non-brand campaign before relaunch.demand-gen/paid/ads-account-audit.md#checklist
B3Wrong conversion goalsneeds approval
Two customer conversion goals are biddable: QUALIFIED_LEAD (WEBSITE) and SIGNUP (WEBSITE). 'Reports_Offline_Conversions - New' (UPLOAD_CLICKS, QUALIFIED_LEAD) is primary and counted in Conversions, which is correct. But 'Complete_Signup' (WEBPAGE, SIGNUP) is also primary and biddable. All 4 conversions from 2026-09-17 to 2026-11-11 were Complete_Signup, and none were imported qualified leads.
warnhighSKeep QUALIFIED_LEAD as the primary bidding goal. Set SIGNUP to secondary (observe only), or give it a lower value, once the offline import (B4) works.demand-gen/paid/ads-account-audit.md#checklist
A3No student/free/job-seeker negativesneeds approval
The 'General Keywords' shared negative list is attached to all 25 recently active campaigns. It has phrase negatives for free, tutorial, tutorials, career, careers, job, jobs, salary, course, courses, crack, internship and torrent. 'student' and 'students' are missing from it. 'student' exists only as a broad negative on 'Bold Reports- US-SSRS' and 'Bold - Reports - Europe Tier 1 - SSRS - New', which are attached to the SSRS campaigns only. 'free' is negated as a phrase on every campaign, although Bold Reports offers a 30-day trial and a Community License (_reference/pricing-and-licensing.md).
warnmediumSAdd 'student' and 'students' as phrase negatives to 'General Keywords'. The paid search lead should decide whether to keep the 'free' negative, given the free trial and Community License.demand-gen/paid/ads-account-audit.md#checklist
A5Search-term wasteneeds approval
The current period had no search terms because there was no spend. The top 50 search terms by spend from the previous period (2026-09-17 to 2026-10-14) were reviewed. Most match their themes (Crystal viewer, SSRS builder and migration, ERP, RDL). The weak spots are broad generic or informational queries with 0 conversions, matched as close variants of exact keywords in the Embedded & White Label campaigns: 'reporting tools' ($118.82 US/CA, $85.22 India), 'business report' ($93.01), 'reporting tools list' ($32.67 India, $24.72 US/CA), 'report maker' ($27.90), 'business reports' ($25.44 UK, $18.30 US/CA), 'bi reporting tools' ($24.36) and 'analytics and reporting tools' ($18.76). A competitor brand query, 'telerikreportviewer' ($26.32, 0 conv), ran in Developer & SDK US & Canada. Embedded & White Label US & Canada spent $846.27 for 0 conversions, and Embedded & White Label India spent $766.85 for 1.
warnmediumSAdd phrase negatives for informational variants ('business report', 'business reports', 'reports list', 'report maker') to the Embedded & White Label campaigns. Add competitor brands (telerik) as negatives to Developer & SDK, or route them to a competitor campaign. Review the 'reporting tools' generics once conversion tracking works.demand-gen/paid/ads-account-audit.md#checklist
B2PMax cannibalizing brandneeds approval
There are two Performance Max campaigns, both paused with no spend in either period. 'Crystal Reports - US - PMAX Campaign' has campaign negatives 'bold reports' (exact) and 'bold reports community license' (exact). 'US - SSRS Alternative - PMAX' negates 'bold report', 'bold reporting' and 'bold sign' (exact) but not 'bold reports' or 'boldreports'. The brand-list shared sets ('Syncfusion', 'Bold BI') have reference_count 0, so no PMax brand exclusion is applied. Brand campaign search impression share was 0.9048 in the previous period (67 impressions). There is no current-period value because the account didn't serve.
warnmediumSBefore re-enabling 'US - SSRS Alternative - PMAX', add 'bold reports' and 'boldreports' as negatives or apply a brand exclusion list.demand-gen/paid/ads-account-audit.md#checklist
B5CPA vs pricing modelneeds approval
Of the 25 recently active campaigns, 24 use MANUAL_CPC. 'Crystal Displacement - Target CPA | US & Canada' uses MAXIMIZE_CONVERSIONS with no target CPA set, despite its name. There is no single target across different offers, but no campaign has a target matched to the pricing model either. The account recorded 4 conversions in the previous 28 days, too few for Smart Bidding targets.
warnmediumMOnce qualified-lead import works (B4), set separate targets for the per-user (internal reporting, SSRS/Crystal migration) and per-application (embedded/ISV) offers. Rename or reconfigure the 'Target CPA' campaign so its name matches its bidding.demand-gen/paid/ads-account-audit.md#checklist
C1Competitor trademark issuesneeds approval
5 top-spend RSAs were sampled. Competitor marks appear in headlines: 'Stimulsoft Alternative', 'Replace Stimulsoft Reports', 'SAP Crystal Viewer Alternative', 'Crystal Reports Viewer', 'Modern Crystal Reports Viewer', 'SSRS Report Builder Reborn', 'Replace SSRS Report Builder' and 'SSRS Report Viewer'. The tone is positive and factual. All of these assets are APPROVED, and no enabled ad is disapproved or limited. The standalone headlines 'Crystal Reports Viewer' and 'SSRS Report Viewer' could read as the competitor's own product. This run can't verify whether the trademark use is permitted.
warnmediumSProduct marketing should confirm that trademark use is permitted. Pair standalone competitor-product headlines with 'alternative' or 'for' wording, or pin them with a disambiguating headline.demand-gen/paid/ads-account-audit.md#checklist
C2Landing page mismatchneeds approval
Most ad groups map to matching pages. Crystal viewer goes to /crystal-reports-viewer-alternative/, SSRS builder to /ssrs-report-builder-alternative/, SSRS migration to /ssrs-migration/, ERP to /erp-reporting-software/, Stimulsoft to /stimulsoft-alternative/, brand to / and brand commercial to /pricing/. Mismatches: the Developer RDL Tooling ad groups (keywords 'rdlc report designer', 'rdl report designer') go to /report-viewer/, a viewer page for designer queries. One Crystal Report Viewer ad (823034318874, $16.80) goes to a blog post (/blog/crystal-reports-viewer-vs-web-viewers/) instead of a product or trial page. The website buyer-fit audit was not run.
warnmediumSPoint the RDL designer ad groups to the report designer page. Move the blog-post ad to the viewer alternative page, or test the two. Run the website buyer-fit audit on the main landing pages.demand-gen/paid/ads-account-audit.md#checklist
A6Audience Network (Microsoft Ads)
Not checked: no Microsoft Ads data source was connected for this run. Only the google-ads MCP server was available.
not-checkedlowSCheck the Audience Network setting manually in Microsoft Ads, if Bold Reports runs there.demand-gen/paid/ads-account-audit.md#checklist
B1Auto-applied recommendations
All 8 recommendation_subscription entries are PAUSED, including OPTIMIZE_AD_ROTATION and MAXIMIZE_CLICKS_OPT_IN. change_event from 2026-10-14 to 2026-11-12 shows one change, an ASSET CREATE by INTERNAL_TOOL on 2026-10-19, and no changes by recommendations. change_event only goes back about 30 days, so 2026-09-17 to 2026-10-13 was not covered. Microsoft Ads was not checked.
passhighSNone for Google Ads. Check Microsoft Ads manually.demand-gen/paid/ads-account-audit.md#checklist
A1Broad match without negatives
Every non-removed campaign is paused, and none spent between 2026-10-15 and 2026-11-11. The 25 campaigns that spent in the previous period (2026-09-17 to 2026-10-14) used only EXACT and PHRASE keywords (top 80 keywords by spend reviewed). Four enabled BROAD keywords exist, all in older paused campaigns with no spend in either period: 'migrate from ssrs' in Europe Tier 1 - SSRS, Europe Tier 2 - SSRS and US - SSRS, and 'ssrs replacement' in US - SSRS - New. All four campaigns use MAXIMIZE_CONVERSIONS.
passmediumSNo change needed for the recently active campaigns. Before re-enabling the four older SSRS campaigns, check that they have enough conversion volume for broad match, or switch these keywords to phrase match.demand-gen/paid/ads-account-audit.md#checklist
A2Search Partners and Display bleedneeds approval
All 25 Search campaigns that spent in the previous period have target_search_network=False and target_content_network=False. One older paused Search campaign, 'Bold Reports - US - Enterprise Reporting' (23209530194), has both Search Partners and Display on.
passmediumSTurn off Search Partners and Display on 'Bold Reports - US - Enterprise Reporting' before re-enabling it.demand-gen/paid/ads-account-audit.md#checklist
A4Geo "presence or interest"needs approval
All 25 recently active campaigns use positiveGeoTargetType PRESENCE. Thirteen older paused campaigns still use PRESENCE_OR_INTEREST: Display Ads - SSRS - US and Canada, US - Enterprise Reporting, Europe Tier 2 - Embedded Reporting, Europe Tier 2 - Self Service Reporting, India - SSRS, India - Embedded Reporting, India - Self Service Reporting, Canada - SSRS - New, US - Business Reporting - New, Europe Tier - 1 - Business Reporting - New, US - Reports Designer, Europe Tier 1 - Report Designer, and Canada - Reports Designer.
passmediumSSwitch these 13 paused campaigns to Presence before re-enabling any of them.demand-gen/paid/ads-account-audit.md#checklist
C3Disapproved or limited ads
A query for enabled ads in non-removed campaigns with approval status DISAPPROVED, APPROVED_LIMITED or AREA_OF_INTEREST_ONLY returned no results. All 60 ads with impressions in the previous period are REVIEWED/APPROVED.
passmediumSNone.demand-gen/paid/ads-account-audit.md#checklist

Metrics

MetricValuePreviousChangePeriodDimensions
Ad spend ads.spend03,800-100.0%2026-10-15 – 2026-11-11account: 7669175401, platform: google-ads
Ad clicks ads.clicks0453-100.0%2026-10-15 – 2026-11-11account: 7669175401, platform: google-ads
Conversions ads.conversions04-100.0%2026-10-15 – 2026-11-11account: 7669175401, platform: google-ads
Estimated monthly waste ads.wasted_spend_est–––2026-10-15 – 2026-11-11account: 7669175401, platform: google-ads
Audit items passed ads.audit_pass_rate33.3%––2026-10-15 – 2026-11-11account: 7669175401, platform: google-ads, basis: 5 pass of 15 checked items

Folder: reports/publish/bold-reports/google-ads-audit/20261112-1547_google-ads-audit_bold-reports_4c1d