betterdocs-category-icon

Account Management

3

Agency Life

4

Frequently Asked Questions

Wordpress - MarTech

  • How do I fix a critical WordPress error on a client website?

    See the full KB article here.  

    A critical error is actually a Fatal PHP Error. 

    You’ll need the SFTP credentials for the website, an SFTP client (WinSCP for Windows or Cyberduck for Mac or Termius for the enlightened), a quality code editor Sublime Text or VSCode. 

    1. Confirm Staging is functional.
    2. Push Staging to Production.
    3. Used an SFTP client to login to the site.
    4. Enabled Debug mode via wp-config.php 
    5. Refreshed the site. 
    6. Noted the error displayed. When you see /plugins/PLUGIN-NAME/ and if it starts with Fatal Error, that is the problem plugin.
    7. In this case it was Header Footer Elementor: https://wordpress.org/plugins/header-footer-elementor/
      1. This is not a plugin we need at all, delete the offending plugin. 
      2. This is always fine on production if it gets the site live again.
    8. Disable debug mode in wp-config.php by setting the directive to “false”.
    9. Clear the WPEngine cache.
    10. Refresh and confirm the site was functional again.

    Add the following to wp-config.php

    // Enable WP_DEBUG mode
    define( 'WP_DEBUG', false );
    define( 'WP_DEBUG_DISPLAY', false );

  • Can I use this cool free plugin or theme I found?

    Nope! At least not in the way you think. 

    We work on Standard Operating Procedures and purchase Agency Level plugin packs. This gives us access to hundreds of plugins that by and large have been vetted for compatibility, reliability and sustainability (ie the code is well written, secure and the company that develops it is stable).

    1. Introducing new plugins causes the team to need to understand and learn a new “thing” when in reality our requests are repeatable.
    2. Speed issues arise from poorly written plugins.
    3. You’re most probably going to be duplicating something we are already paying to use.

    Our Plugin Packs

    1. Essential Add-Ons by WPDeveloper.
      1. We have the Agency Unlimited Bundle located at https://store.wpdeveloper.com/user/dashboard 
      2. Essential Add-Ons for Elementor.
      3. Better Docs Pro.
      4. Notifications X Pro.
      5. Essential Blocks Pro.
      6. Schedule Press.
    2. Unlimited Elements for Elementor.
      1. https://unlimited-elements.com/ 

    TO DO: Add the complete list of plugin packs.

Client Success & Account Management

  • On a Grow Program if a client wanted to prioritize updating a logo is that something we can fit within a sprint?

    Answer: it really depends on the scope of the logo redesign/update being requested ie how far it goes into the brand and what they are looking to update. Also depends on this size of the Grow Program. At minimum it would be one 2-week sprint I would think and we would just need to be clear that it would not spill over into a brand redesign.

    Typically we do not include design in Grow Programs as these programs are performance based, as long as we are in scope, keep it tight and never lose focus of the goal of the program we can usually accomodate.

    Warning! Please be casreful of over-accomodating a client with requests that go outside of the scope of the Program. 100% of the time, when this has happened 2-3 months later the client will ask why they haven’t seen a performance increase or growth and we lose the program.

Google Ads

  • Google is telling me “Campaign has limited reach and cannot meet its goals.” I can’t launch the campaign. 😕

    When this appears, it usually means the combination of your bidding, budget, targeting, and keywords/audience is so restrictive that Google cannot predict enough impressions to hit your goals. The best way to fix this is to temporarily simplify the campaign, then add constraints back while watching how reach changes.

    Recommended solution

    1. Reset your targeting to broaden reach
      1. Remove all non‑essential targeting layers:
      2. Pause narrow locations (e.g., shrink from city‑block targeting to city/region).
      3. Remove very tight demographics or household income filters.
      4. Remove overly specific audience segments for now.
      5. For Search, temporarily remove redundant or very low‑volume keywords.
      6. Keep only what’s absolutely required for your business to be relevant.
    2. Let Google refresh its reach estimates
      1. After you simplify targeting, save the campaign and give Google a moment to recalculate forecasts in the campaign setup view.
      2. Watch the estimated impressions and weekly conversions; the warning should disappear once reach is sufficient.
    3. Add targeting back in this order
      1. First, add or refine location and language to match where your customers actually are.
      2. Next, layer in audiences (e.g., in‑market, custom segments, remarketing) and check the reach estimates again.
      3. Finally, refine keywords (for Search) or placements/topics (for Display/Video) and avoid stacking too many filters at once.
      4. After each change, check whether estimated reach remains healthy before adding more restrictions.
    4. Adjust bids and budget if needed
      1. If your daily budget is very low for your chosen bid strategy, Google may struggle to forecast enough volume. Raising the budget (even temporarily) can help the system predict reach.
      2. If you are using a strict automated bidding strategy (e.g., Target CPA/ROAS) with a very aggressive target, consider starting with Maximize clicks or Maximize conversions and switching once you have some data.

    Additional tips

    1. Avoid over‑layering: Using keywords and multiple audience segments and tight geo and strict demographics can choke volume; try removing one layer at a time instead of everything at once.
    2. Use broader match types first: Start with broader or phrase match on key terms to build volume, then gradually introduce exact match and negatives as you get search term data.
    3. Check policy and inventory: Make sure your ads, assets, and keywords are all approved and that your product/service is allowed in the selected regions; policy disapprovals or limited inventory can also trigger low‑reach warnings.
    4. Consider campaign type: Some campaign types (e.g., Performance Max or certain video formats) require broader signals; if you’re extremely niche, a standard Search campaign with carefully chosen but not over‑restricted targeting may work better.
    5. If you follow this approach—start broad, verify reach, then progressively tighten targeting while watching estimates—you should be able to clear the warning and launch, without accidentally starving the campaign of impressions.
  • If I set up a Google Ads campaign and that Google Ads campaign goes to a general contact form on my website and I have set up a “contact form success” submit goal, will Google Ads treat every form submit as a successful google ad conversion?

    Usually yes: if your “contact form success” goal is defined purely as “any hit on this thank-you URL” or “any submit event,” Google Ads will count all tracked submissions that follow an ad click, even if that form is also used by other channels.

    How Google Ads Treats The Goal

    Native Google Ads conversion tags or GA4-imported conversions fire whenever the defined event or URL condition is met; they do not inherently know which form fill came from a “Google Ads variant” versus organic.

    As long as there is a valid Google Ads click in the user’s history within the conversion window, Google Ads can attribute that conversion to the ad, even if the user later returns via organic/direct and submits the same generic form.

    When “Every Form Submit” Becomes An Ad Conversion

    If your success condition is the global thank-you page or a generic “form_submit” event that fires for all sources, every qualifying submission from a user who has a prior Google Ads click can be reported as a Google Ads conversion.

    GA4 goals/events imported into Google Ads behave the same way: GA4 counts the event for all traffic; Google Ads then attributes that event back to its ads when an eligible ad click exists in the attribution window.

    Ways To Avoid Over‑Counting

    Use a separate thank-you page or success event only used by the Google Ads flow (e.g., dedicated landing page + unique thank-you URL), and base the conversion on that.

    Alternatively, pass campaign/source parameters with the form and fire a more targeted conversion (via GTM or gtag) only when the submission is from Google Ads traffic, instead of using a generic “contact form success” for all. This is the best solution.

  • If I set up a Google ads campaign in Hubspot going to my general contact form which is also a Hubspot form, will Hubspot ensure that the form submits tracked by the Google Ads campaign are only relevant to the Google Ads campaign and DO NOT include all general form submissions from organic search and other sources?

    Yes. If the campaign is set up correctly in HubSpot, the “Google Ads” conversion metrics in the Ads tool will only count form submissions from users who actually came via a Google ad click, not all generic submissions to that same form.

    How HubSpot Separates Ad vs Organic

    HubSpot appends its own UTM and hsa_* parameters to Google Ads URLs (when auto-tracking is on), and uses those parameters plus the HubSpot tracking cookie to attribute a contact/form submission to “Paid search / Google Ads.”

    Attribution rules require that a contact has an ad click that started a tracked web session, followed by a form submission; only those submissions are counted as ad conversions in the Ads tool and related attribution reports.

    What Happens To Organic Form Fills

    Organic or direct visitors who submit the same form are still created/logged as contacts, but their original source is set to “Organic search,” “Direct,” etc., so they are not counted in the Google Ads campaign’s conversion metrics.

    In Ads reporting, you can filter by attribution type (e.g., “First ad interaction,” “Last ad interaction,” “All ad interactions”) to see only contacts whose journey includes a qualifying ad interaction, which inherently excludes purely organic form submissions from those ad conversion counts.

    Key Requirements To Make This Work

    HubSpot tracking code must be on the landing page (or it must be a HubSpot page, which has it by default).

    The form must be a HubSpot form (or use the Forms API correctly) and the landing URL used in the ad must include the HubSpot auto-tracking parameters applied via the Google Ads integration.

    So you can safely point Google Ads and organic traffic to the same HubSpot form; in HubSpot’s Ads tool and attribution reports, only the subset of submissions with a prior Google Ads click will show up as conversions for that campaign

  • How can I improve Quality Score

    There are a ton of recources available for improving Quality Score.Google Ads Quality Score is a metric that measures the relevance and usefulness of your ads and keywords. It’s a rating system that determines the quality of your ads based on several factors, including click-through rate (CTR), relevance, landing page experience, ad relevance, historical performance, and more. A higher Quality Score means that your ad is more relevant and useful to users, and as a result, Google will reward you with a better ad position and lower cost-per-click.

    Here are some action items that you can do to improve your Google Ads Quality Score:

    Improve your keyword relevance: Make sure that your ad groups are organized around relevant themes and that your keywords are closely related to your ad copy and landing pages. Use negative keywords to exclude irrelevant searches.

    Improve your ad relevance: Your ad copy should be relevant to the keywords you’re bidding on and should include the keyword in the headline and description. Use ad extensions like sitelinks and callouts to provide more information to users.

    Improve your landing page experience: Your landing page should be relevant to your ad and should provide a good user experience. Make sure that your landing page loads quickly, is mobile-friendly, and has clear calls-to-action.

    Increase your click-through rate (CTR): A higher CTR indicates that your ads are more relevant and useful to users. Experiment with different ad copy and ad formats to increase your CTR.

    Improve your historical performance: Google considers your account’s historical performance when determining your Quality Score. If you have a good track record of providing relevant and useful ads, your Quality Score will be higher.

    Optimize your ad bidding strategy: Make sure that you’re bidding on keywords that are relevant to your business and that you’re not overbidding for clicks. Use bidding strategies like target CPA or target ROAS to optimize your ad spend.

    By following these action items, you can improve your Google Ads Quality Score and achieve better ad performance. Keep in mind that improving your Quality Score is an ongoing process, and it’s important to regularly review and optimize your campaigns to maintain a high Quality Score. 

    Resources

    https://adalysis.com/quality-score/

  • How do I make sure my Google Ads are in the top position?

    Achieving the top position on Google Ads is not guaranteed, as it is determined by a combination of factors such as your ad’s relevance, the quality of your landing page, your bid, and the competition for the ad space. However, here are some strategies that you can implement to increase your chances of achieving a top position:

    Set a competitive bid: The bid amount is an important factor that determines the ad’s placement on the search results page. A higher bid can increase the chances of getting a top position, but it’s essential to strike a balance between your bid and your return on investment.

    Improve your ad relevance: Google Ads rewards advertisers who create highly relevant ads by giving them better ad positions. Ensure that your ad copy matches your target audience’s search intent and incorporates your target keywords.

    Optimize your landing page: Your landing page’s quality score is an essential factor that determines ad position. Make sure that your landing page is relevant, easy to navigate, and provides a good user experience.

    Increase your ad’s click-through rate: A higher click-through rate (CTR) indicates that your ad is resonating with your target audience. Experiment with different ad formats, headlines, and descriptions to improve your CTR.

    Use ad extensions: Ad extensions can provide additional information and increase the ad’s visibility on the search results page, potentially increasing your chances of achieving a top position.

    Remember, achieving a top position is not always necessary to generate results. It’s essential to focus on creating ads that are highly relevant to your target audience, provide a good user experience, and deliver value to your business.

Looker Studio

  • How can I switch data sources in my Data Studio (Looker Studio) reports

    You can replace the data source for selected charts and controls, the current page, or the entire report. Reasons you might want to do this include:

    • Copying a report and replacing your data source with a client’s data source.
    • Testing a report with no email filters applied, then switching to a data source with email filtering.
    • Switching the data source for a selected component from one account, sheet, or database table to another.
    • Overriding the default page or report-level data source.

    What happens when you replace a data source

    When you replace a data source in your report, Looker Studio tries to map the fields in the old data source to the fields in the new data source based on a number of matching criteria, including field ID, field name, and other configuration information from the report itself. Looker Studio won’t try to map your old fields in calculated fields and filters.

    If no suitable match is found, your report may display components with the message:

    Chart configuration incomplete
    Invalid/Missing dimensions, metrics, filters.

    To fix this, edit the incomplete components and select new dimension, metric, sorting, and/or date range fields.

    We strongly recommend you review your entire report for accuracy after replacing any data sources used in the report.

    Replace a component data source

    1. Edit your report.
    2. Select one or more charts or controls.
    3. On the right, in the selected component’s property panel, select the Setup tab.
    4. Click the current data source name.
    5. Select an existing data source, or, at the bottom, click NEW DATA SOURCE.
      1. Learn more about creating a data source.
    6. If prompted, click Add to report.

    Replacing the data source for one component has no effect on the other components in your report.

    Replace a page or report-level data source

    Most reports won’t have page or report-level data sources unless you’ve explicitly set them. Setting a data source at the page or report level has no effect on existing components in your report. Instead, new components you add use the page or report-level data source by default.

    Replacing a page or report-level data source follows the same process as outlined above.

    Replace the data source for the current page

    1. Edit your report.
    2. Navigate to a specific page.
    3. Select Page > Current page settings.
    4. On the right, in Current Page Settings, select the Setup tab, then click the current data source (or Select Data Source, if no data source has been added).
    5. Select an existing data source or create a new one.
    6. If prompted, click Add to report.

    Replace the data source for the entire report

    1. Edit your report.
    2. Select File > Report settings.
    3. On the right, in Report Settings, click the current data source (or Select Data Source, if no data source has been added).
    4. Select an existing data source or create a new one.
    5. If prompted, click Add to report.