ABM Strategy Alignment & Live SEO Audit — 2026-04-05
Overview
Internal working session between Mark Hope and Sebastian Gant to align on Aviary's go-to-market strategy and perform a live technical SEO audit of helloaviary.ai. The meeting covered two major workstreams: (1) framing ABM as the primary strategy with PPC in a supporting discovery role, and (2) identifying and immediately fixing critical technical SEO issues using Ahrefs, the Webflow API, and Python scripting.
Attendees: Mark Hope, Sebastian Gant
Client: [1]
Key Decisions
- ABM is the core strategy. PPC is explicitly framed as exploratory/reconnaissance — not the primary growth lever. All client-facing communication should lead with ABM.
- PPC budget set at $1,000 across three campaigns. Bidding strategy: start at ~2/3 of estimated CPC and increment daily to conserve budget.
- ~6 Webflow landing pages needed immediately: 2 for PPC campaigns, 4 for ABM verticals.
- Webflow API + Python is the preferred method for bulk SEO updates — faster and more reliable than manual edits or third-party tools like Fluid SEO.
- Eshock must be Webflow-ready within 48 hours to begin landing page development.
ABM Strategy
Core Principles
ABM treats high-value accounts as "markets of one." The approach inverts traditional lead-gen: identify the target first, then personalize everything to win them.
| Traditional Marketing | ABM |
|---|---|
| Cast wide net → filter leads → qualify → sell | Pick target → personalize → surround → close |
Target Account Structure
- List size: 50–100 specific companies (not 500–1,000)
- Verticals: Community banks, credit unions, and potentially others (TBD via PPC discovery)
- Tiering:
- Tier 1 (10–15 accounts): Deep personalization, 2–3 hours research per account
- Tier 2 (20–30 accounts): Moderate personalization, 45–60 minutes per account
- Tier 3 (remaining): Light personalization, 15–20 minutes per account
Multi-Channel Execution
Same message, multiple channels — LinkedIn, email, direct mail — hitting each target account with consistent positioning across touchpoints. Sales and marketing operate as one team.
Research Process (per account)
- Website audit and competitive analysis
- Decision-maker identification via LinkedIn Sales Navigator / ZoomInfo
- Data enrichment via Clay
- LinkedIn profile scraping via Phantom Buster
- Tier classification by revenue and fit score
HubSpot Configuration
HubSpot must be configured to track all ABM activity and capture attribution data. Campaign naming convention: ABM2026_[Vertical]_[Quarter] (e.g., ABM2026_CreditUnion_Q2). Mark will add ABM-specific fields and set up attribution tracking.
PPC Strategy
Campaigns (Sebastian's $1K Plan)
| Campaign | Ad Groups | Notes |
|---|---|---|
| Outbound Voice | Outbound Voice AI | Core product; search volume is modest, CPCs are high |
| Credit Union-Specific | Credit Union Core, Call Center / Contact Center Automation | Vertical-specific targeting |
| Discovery | General Voice AI, Financial Services | Exploratory; tests new verticals and keyword demand |
Bidding Approach
Start bids at ~2/3 of Google's estimated CPC. Increment by $0.25–$0.50/day until meaningful engagement is achieved. Avoids blowing budget before finding effective bid levels.
Framing for Client
Position PPC as reconnaissance: testing keywords, measuring CPCs, identifying which verticals respond. Not the primary growth engine — but may surface unexpected demand.
Live SEO Audit — helloaviary.ai
Starting State
Ahrefs site health score: 1/100. Total errors: ~1,500.
Fixes Implemented During Meeting
1. Broken Links — 840 instances
Root cause: Old page /old-home-2 was never redirected after a site redesign. Nearly all 840 broken links pointed to this dead URL.
Fix: Created a 301 permanent redirect in Webflow (Site Settings → Publishing → 301 Redirects):
- Old path: /old-home-2
- Redirect target: https://www.helloaviary.ai
Result: Expected to resolve the large majority of broken link errors on next crawl.
2. Meta Descriptions Too Long — 722 pages
Root cause: Meta descriptions significantly exceeded the 155-character optimal length (some were 300+ characters).
Fix:
1. Exported Ahrefs CSV of all pages with long descriptions
2. Used Claude to rewrite all descriptions (column I → column F) optimized for SEO, max 155 characters
3. Mark wrote a Python script connecting to the Webflow API to bulk-update all 722 pages and posts
4. Script ran successfully: 5 pages + 48 blog posts updated and published via API
Key detail: Blog post meta descriptions map to the CMS post-summary field, not a separate SEO field.
3. Internal HTTP Links — 39 posts
Root cause: CMS blog posts contained internal links using http:// instead of https://.
Fix: Python script (same API connection) scanned all posts, identified 39 with HTTP internal links, and updated them to HTTPS in bulk.
4. Duplicate Content / Missing Canonicals — 112 pages
Root cause: Pagination and duplicate page variants lacked canonical tags, triggering duplicate content warnings.
Fix: Added a static canonical tag to the site's <head> code in Webflow. Resolves pagination-related duplicates site-wide.
Post-fix health score: Improved from 1 → 27 during the meeting.
Remaining SEO Issues
| Issue | Count | Severity | Planned Fix |
|---|---|---|---|
| Pages with multiple H1 tags | 602 | Critical | Python script via Webflow API (Mark) |
| Missing image alt text | 161 images | High | AI-generated alt text script (Mark) |
Hardcoded links to /old-home-2 in Webflow Designer |
Unknown | Medium | Manual search and update in Designer (Sebastian) |
| Canonical URLs not yet indexed | Multiple | Medium | Request indexing in Google Search Console (Sebastian) |
Multiple H1s — Priority Fix
602 pages have more than one H1 tag, which is a critical SEO error. Sebastian will export the Ahrefs CSV of affected pages and send to Mark, who will fix via Python/API script.
Alt Text
An AI script is being developed to generate SEO-optimized alt text for all 161 images with missing descriptions.
Hardcoded Designer Links
Some links to /old-home-2 are embedded directly in the Webflow Designer (not in CMS content) and cannot be fixed via API. These must be located and updated manually.
Action Items
| Owner | Action | Status |
|---|---|---|
| Sebastian | Share PPC strategy doc with Mark; present on Aviary call; send to Aviary if requested | Open |
| Sebastian | Send Webflow access to Eshock; confirm he can build 6 landing pages | Open |
| Sebastian | Review Ahrefs crawl; find and fix remaining hardcoded broken links in Webflow Designer | Open |
| Sebastian | Request indexing in GSC for remaining canonical URLs; rerun Ahrefs crawl in 1 week | Open |
| Sebastian | Export Ahrefs CSV of pages with >1 H1; send to Mark for fix | Open |
| Mark | Finalize Aviary ABM strategy document (repurposed from PaperTube research) | Open |
| Mark | Add ABM fields in HubSpot; configure attribution tracking | Open |
| Mark | Complete Python script to fix 602 multiple-H1 errors | Open |
| Mark | Complete AI alt-text updates for all Aviary images | Open |
| Mark | Research how to find and fix hardcoded links in Webflow Designer | Open |
| Both | Configure HubSpot for ABM tracking and attribution | Open |
| Both | Present live SEO audit findings and immediate fixes to Aviary | Open |
Technical Reference
Webflow API — Key Endpoints Used
- Pages:
GET/PUT /v2/pages/{pageId}— update page SEO title and description - CMS Posts:
PATCH /v2/collections/{collectionId}/items/{itemId}— updatepost-summaryfield - Auth: Bearer token generated via
Site Settings → Apps & Integrations → Generate API Token(read/write on Pages and CMS Collections)
SEO Character Limits
- Title tag: 55 characters
- Meta description: 155 characters
Redirect Configuration (Webflow)
Site Settings → Publishing → 301 Redirects
Related
- [2]
- [3]
- [4]
- [5]