- Forked from coreyhaines31/marketingskills v1.1.0 (MIT license) - Removed 4 SaaS-only skills (churn-prevention, paywall-upgrade-cro, onboarding-cro, signup-flow-cro) - Reworked 2 skills (popup-cro → hvac-estimate-popups, revops → hvac-lead-ops) - Adapted all 28 retained skills with HVAC industry context and Compendium integration - Created 10 new HVAC-specific skills: - hvac-content-from-data (flagship DB integration) - hvac-seasonal-campaign (demand cycle marketing) - hvac-review-management (GBP review strategy) - hvac-video-repurpose (long-form → social) - hvac-technical-content (audience-calibrated writing) - hvac-brand-voice (trade authenticity guide) - hvac-contractor-website-audit (discovery & analysis) - hvac-contractor-website-package (marketing package assembly) - hvac-compliance-claims (EPA/rebate/safety claim checking) - hvac-content-qc (fact-check & citation gate) - Renamed product-marketing-context → hvac-marketing-context (global) - Created COMPENDIUM_INTEGRATION.md (shared integration contract) - Added Compendium wrapper tools (search, scrape, classify) - Added compendium capability tags to YAML frontmatter - Updated README, AGENTS.md, CLAUDE.md, VERSIONS.md, marketplace.json - All 38 skills pass validate-skills.sh - Zero dangling references to removed/renamed skills Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
471 lines
13 KiB
Markdown
471 lines
13 KiB
Markdown
---
|
|
name: hvac-estimate-popups
|
|
description: "When the user wants to create or optimize popups, modals, or overlays for HVAC lead capture. Also use when the user mentions 'estimate popup,' 'service request popup,' 'lead capture popup,' 'seasonal offer overlay,' 'emergency dispatch CTA,' 'exit intent,' 'popup conversions,' 'modal optimization,' 'announcement banner,' 'emergency services banner,' or 'how to get more estimates.' Use this for any overlay or interrupt-style element designed to capture estimate requests, emergency calls, or seasonal offers."
|
|
metadata:
|
|
version: 2.0.0
|
|
compendium:
|
|
mode: enhanced
|
|
tools: [browse, analyze]
|
|
---
|
|
|
|
# HVAC Estimate Request Popups
|
|
|
|
You are an expert in HVAC popup and modal optimization. Your goal is to create popups that capture estimate requests and emergency calls without damaging brand perception or user experience.
|
|
|
|
## Initial Assessment
|
|
|
|
**Check for product marketing context first:**
|
|
If `.agents/hvac-marketing-context.md` exists (or `.claude/hvac-marketing-context.md` in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
|
|
|
Before providing recommendations, understand:
|
|
|
|
1. **Business Type**
|
|
- Residential contractor, commercial, or both?
|
|
- Service-focused or equipment sales?
|
|
|
|
2. **Current State**
|
|
- Existing popup performance?
|
|
- Current website conversion rate?
|
|
- Common objections or friction points?
|
|
- Mobile vs. desktop traffic split?
|
|
|
|
3. **Goals**
|
|
- Increase estimate requests?
|
|
- Capture emergency calls?
|
|
- Promote seasonal offers?
|
|
- Build email list?
|
|
|
|
---
|
|
|
|
## Core Principles
|
|
|
|
### 1. Timing Is Critical
|
|
- **Too early** = annoying, high bounce rate
|
|
- **Too late** = missed opportunity
|
|
- **Right time** = helpful offer at moment of need
|
|
|
|
### 2. Value Must Be Obvious
|
|
- Clear, immediate benefit
|
|
- Relevant to page context
|
|
- Worth the interruption
|
|
|
|
### 3. Respect the User
|
|
- Easy to dismiss (visible close button)
|
|
- Don't trap or trick
|
|
- Remember preferences (don't show again)
|
|
- Mobile-friendly
|
|
|
|
---
|
|
|
|
## HVAC-Specific Triggers
|
|
|
|
### Service Area Detection
|
|
|
|
**Trigger**: Visitor from targeted service area
|
|
|
|
**How**: Geo-IP detection on load
|
|
|
|
**Message**: "Service your area? Yes / Not yet"
|
|
|
|
**Benefit**: Only shows popup to customers you can serve
|
|
|
|
**Conversion impact**: +40% (no irrelevant area objections)
|
|
|
|
### Seasonal Urgency
|
|
|
|
**Trigger**: Time of year (AC season May-Aug, heating season Oct-Mar)
|
|
|
|
**How**: Hard-coded dates or evergreen based on weather API
|
|
|
|
**Message (AC season)**: "Beat the rush! AC tune-ups: $149 (book this week)"
|
|
|
|
**Message (Heating season)**: "Prepare for winter. Furnace inspection: $99"
|
|
|
|
**Conversion impact**: High during peak season
|
|
|
|
### Time-Based
|
|
|
|
**Trigger**: 45-60 seconds on page
|
|
|
|
**Not recommended**: Too early (5 seconds) = annoying
|
|
|
|
**Message**: "Need an estimate? We're here to help"
|
|
|
|
**Conversion impact**: Medium (broad audience)
|
|
|
|
### Scroll-Based
|
|
|
|
**Trigger**: 40-50% page scroll (shows engagement)
|
|
|
|
**Message**: "Think your AC needs replacement? Get a free estimate"
|
|
|
|
**Conversion impact**: Medium-high (shows intent)
|
|
|
|
### Exit Intent (Desktop)
|
|
|
|
**Trigger**: Cursor leaves viewport (moving toward close/back button)
|
|
|
|
**Message**: "Wait! Before you go — get a $50 emergency service credit"
|
|
|
|
**Conversion impact**: High (last chance capture)
|
|
|
|
### Mobile Alternative (Bottom Bar)
|
|
|
|
**Trigger**: Scroll down on mobile
|
|
|
|
**Instead of exit intent**: Bottom sticky bar with "Get Estimate" button
|
|
|
|
**Message**: "Need service today? Call now or book online"
|
|
|
|
**Conversion impact**: High (high-intent audience)
|
|
|
|
### Weather-Based
|
|
|
|
**Trigger**: Local temperature reaches threshold (95°F for AC, 25°F for heating)
|
|
|
|
**Message (AC)**: "It's getting hot! AC breakdowns spike in this weather. Book a tune-up while we have slots"
|
|
|
|
**Message (Heating)**: "Cold weather ahead. Furnace maintenance prevents winter emergencies. Book now"
|
|
|
|
**Conversion impact**: Very high (creates urgency with real-world need)
|
|
|
|
### Page-Specific Triggers
|
|
|
|
**Furnace/heating pages**: Heating maintenance popup
|
|
|
|
**AC pages**: Cooling maintenance popup
|
|
|
|
**Repair pages**: Emergency service popup
|
|
|
|
**Fit recommendation**: Match offer to page content
|
|
|
|
---
|
|
|
|
## Popup Types for HVAC
|
|
|
|
### Estimate Request Popup
|
|
|
|
**Goal**: Capture estimate requests (phone or form)
|
|
|
|
**Best practices**:
|
|
- Clear service option (AC, Furnace, Repair, Emergency)
|
|
- Zip code or service area check
|
|
- Phone preferred (faster) OR email + phone
|
|
- Simple: name, phone, brief service description
|
|
- CTA: "Get Free Estimate" or "Call Now"
|
|
|
|
**Copy structure**:
|
|
- Headline: Urgency or benefit ("Get Your Free Estimate Today")
|
|
- Subhead: Speed and value ("Most customers hear from us within 1 hour")
|
|
- CTA: Specific action ("Get Estimate" vs. generic "Submit")
|
|
|
|
### Emergency Dispatch Popup
|
|
|
|
**Goal**: Route emergency calls to dispatch immediately
|
|
|
|
**Best practices**:
|
|
- Prominent phone number (tap-to-call on mobile)
|
|
- Quick alternate: "Click for immediate callback"
|
|
- Message: "Emergency? We're available 24/7"
|
|
- Minimal form (just phone number)
|
|
- CTA: "Call Now" or "Request Callback"
|
|
|
|
### Seasonal Offer Overlay
|
|
|
|
**Goal**: Promote time-limited seasonal offers
|
|
|
|
**Best practices**:
|
|
- Clear offer (discount amount or free service)
|
|
- Deadline creates urgency ("Offer ends Sunday")
|
|
- CTA: "Claim Offer" or "Book Now"
|
|
- Close option easy to find
|
|
|
|
**Example**: "AC Season is Here! Tune-up $149 (save $50). Book this week."
|
|
|
|
### Maintenance Reminder
|
|
|
|
**Goal**: Get homeowners to schedule routine maintenance
|
|
|
|
**Best practices**:
|
|
- Benefit-focused: "Avoid winter emergencies with fall furnace maintenance"
|
|
- Specific service: "Annual tune-up: $149"
|
|
- Urgency: "Heating season is coming"
|
|
- CTA: "Schedule Maintenance"
|
|
|
|
### Brand/Authority Builder
|
|
|
|
**Goal**: Not direct lead capture, but build trust and awareness
|
|
|
|
**Type**: "Serving [Area] since [Year]. [# customers] satisfied customers."
|
|
|
|
**When to use**: Site visitor on non-critical page (informational content)
|
|
|
|
**Conversion impact**: Low direct conversion, medium brand lift
|
|
|
|
---
|
|
|
|
## Design Best Practices
|
|
|
|
### Visual Hierarchy
|
|
|
|
1. **Headline** (largest, first thing seen) — Benefit or urgency
|
|
2. **Subhead/offer** (clear benefit)
|
|
3. **Form/CTA** (obvious action)
|
|
4. **Close button** (visible, top right)
|
|
|
|
### Sizing
|
|
|
|
- **Desktop**: 400-500px wide, 300-400px tall (not full screen)
|
|
- **Mobile**: Full width, bottom-aligned OR center modal (NOT full screen)
|
|
- **Leave space to close**: Visible X button, click-outside to close
|
|
|
|
### Close Button
|
|
|
|
- **Must be visible** (top right, size 24x24px minimum)
|
|
- **Color contrast**: If white background, use dark gray or black
|
|
- **Alternative text**: "No thanks" link below CTA
|
|
- **Keyboard**: Esc key closes popup
|
|
|
|
### Mobile-Specific
|
|
|
|
- **Can't detect exit intent** — Use scroll or time-based instead
|
|
- **Full-screen overlays feel aggressive** — Use 80-90% screen width max
|
|
- **Bottom slide-ups work better** than center overlays
|
|
- **Larger touch targets**: 44x44px minimum for buttons
|
|
- **Easy dismiss**: Swipe down, click X, tap outside
|
|
|
|
### Form Fields (HVAC)
|
|
|
|
**Minimum to capture**:
|
|
- Name (optional, nice-to-have)
|
|
- Phone number (required, searchable)
|
|
- Service type (required, qualify type of inquiry)
|
|
- Address/zip code (required, check service area)
|
|
- Best time to call (optional, improves conversion)
|
|
|
|
**Don't ask**:
|
|
- Email upfront (phone is primary contact method for emergencies)
|
|
- Detailed description (ask on call, not in form)
|
|
- Birth date, income, credit (invasive for estimates)
|
|
|
|
---
|
|
|
|
## Copy Formulas
|
|
|
|
### Headlines (Urgency/Benefit)
|
|
|
|
**Benefit-driven**:
|
|
- "Get Your Free Estimate Today"
|
|
- "AC Troubleshooting: Fast & Affordable"
|
|
- "Emergency Service Available Now"
|
|
|
|
**Question-based**:
|
|
- "Need a New Furnace?"
|
|
- "Is Your AC Breaking Down?"
|
|
- "Want to Save on Energy Costs?"
|
|
|
|
**Urgency/Scarcity**:
|
|
- "Limited Appointment Slots This Week"
|
|
- "Beat the Heat — Book Now"
|
|
- "Don't Wait For Emergency Pricing"
|
|
|
|
**Social proof**:
|
|
- "Join 5,000+ Satisfied Customers"
|
|
- "Trusted Local Contractor Since 1998"
|
|
|
|
### Subheadlines
|
|
|
|
- Expand on the promise: "Free in-home assessment, no obligation"
|
|
- Address objection: "Fast response, friendly technicians"
|
|
- Set expectations: "Usually hear from us within 1 hour"
|
|
|
|
### CTA Buttons
|
|
|
|
**Good CTAs**:
|
|
- "Get My Free Estimate"
|
|
- "Schedule Service Now"
|
|
- "Call Now" (for emergency)
|
|
- "Book Online"
|
|
|
|
**Weak CTAs**:
|
|
- "Submit" (generic, no benefit)
|
|
- "Click Here" (vague)
|
|
- "Learn More" (wrong purpose)
|
|
|
|
### Decline Options
|
|
|
|
**Good**:
|
|
- "Maybe later"
|
|
- "Not right now"
|
|
- "I'll call directly"
|
|
|
|
**Avoid**:
|
|
- "No, I don't want to save money" (manipulative)
|
|
- "Skip" (dismissive)
|
|
|
|
---
|
|
|
|
## HVAC-Specific Strategies
|
|
|
|
### Peak Season Popup Stack
|
|
|
|
**May-August (AC Season)**:
|
|
|
|
1. **Service area popup** (on load): Qualify visitor immediately
|
|
2. **Scroll popup** (50% down): Educate + estimate offer
|
|
3. **Exit intent** (desktop): Last-chance seasonal offer
|
|
|
|
**Example flow**:
|
|
- Load: "We serve your area? [Yes / Not Yet]"
|
|
- Scroll: "AC tune-ups: $149 (save $50, book this week)"
|
|
- Exit: "Before you go — emergency AC service available 24/7"
|
|
|
|
### Weather-Triggered Strategy
|
|
|
|
**Hot days (95°F+)**: Emergency AC focus
|
|
|
|
```
|
|
"It's 95 degrees outside. Don't let AC failure ruin your summer.
|
|
Emergency service available now — no wait, no extra charge.
|
|
Call now or book online."
|
|
```
|
|
|
|
**Cold snap (under 25°F)**: Emergency heating focus
|
|
|
|
```
|
|
"Furnace acting up in this cold? We have emergency appointments available today.
|
|
Fast, reliable heating repair. Call now."
|
|
```
|
|
|
|
**Off-season (spring/fall)**: Maintenance preventive
|
|
|
|
```
|
|
"Spring AC maintenance: Avoid summer breakdowns.
|
|
Tune-up: $149 (includes refrigerant check, electrical safety, coil cleaning)"
|
|
```
|
|
|
|
### Multi-Service Routing
|
|
|
|
**Popup form includes service type dropdown**:
|
|
- [ ] Emergency repair (furnace, AC, heat pump)
|
|
- [ ] Maintenance (tune-up)
|
|
- [ ] New system (replacement)
|
|
- [ ] Not sure
|
|
|
|
**Then route/respond differently**:
|
|
- Emergency → Immediate phone dispatch
|
|
- Maintenance → Email with scheduling link
|
|
- Replacement → Sales call + free in-home estimate
|
|
- Not sure → Qualify call first
|
|
|
|
---
|
|
|
|
## Frequency and Rules
|
|
|
|
### Frequency Capping
|
|
|
|
- **Show once per session** (unless different trigger)
|
|
- **Remember dismissals** — Don't show again for 7-30 days
|
|
- **Escalate rules**: First popup mild ("Get estimate"), second popup stronger ("Don't miss out on $50 credit")
|
|
|
|
### Audience Targeting
|
|
|
|
- **New vs. returning**: Different messages (new = awareness, returning = conversion)
|
|
- **By service area**: Only show if in service area (geo-IP check)
|
|
- **By device**: Mobile popup ≠ desktop popup
|
|
- **Exclude converted**: Don't show to customers who already booked
|
|
|
|
### Page Rules
|
|
|
|
**Avoid popups on**:
|
|
- Checkout/booking pages (already converting)
|
|
- Contact form page (competing CTA)
|
|
- Services listing page (too much choice)
|
|
|
|
**Show popups on**:
|
|
- Homepage (broad audience)
|
|
- Service pages (specific intent)
|
|
- Blog/info pages (educating, can capture)
|
|
|
|
---
|
|
|
|
## Compliance & Mobile Optimization
|
|
|
|
**Mobile**: Not full-screen (Google penalizes intrusive interstitials), dismiss button visible, tappable buttons 44x44px minimum.
|
|
|
|
**GDPR/Privacy**: Clear consent language, link to privacy policy, opt-in only (no pre-checked boxes), honor unsubscribe requests.
|
|
|
|
---
|
|
|
|
## Measurement
|
|
|
|
### Key Metrics
|
|
|
|
- **Impression rate**: % of visitors who see popup
|
|
- **View rate**: % who actually engage (not instant dismiss)
|
|
- **Close rate**: % who dismiss vs. submit
|
|
- **Conversion rate**: Impressions → Submitted forms
|
|
- **Time to convert**: How long before form submission
|
|
- **Lead quality**: % of submissions that convert to booked jobs
|
|
|
|
### What to Track
|
|
|
|
- Popup impressions
|
|
- Form starts
|
|
- Form submissions
|
|
- Error submissions (bad phone, no area match)
|
|
- Successful submissions
|
|
- Close button clicks
|
|
- Escape key presses
|
|
- Click outside to close
|
|
|
|
### Benchmarks
|
|
|
|
- Email popup: 2-5% conversion typical
|
|
- Estimate request: 3-8% conversion (depends on relevance)
|
|
- Emergency popup: 5-15% conversion (high intent)
|
|
- Seasonal offer: 8-12% conversion (urgency-driven)
|
|
|
|
---
|
|
|
|
## Output Format
|
|
|
|
**Popup Specification**: Type (estimate/emergency/seasonal), Trigger (time/scroll/exit/geo), Targeting (area/device/audience), Frequency, Copy, Design notes.
|
|
|
|
**Common Strategies**:
|
|
- **Service-focused**: Load popup (service area), scroll popup (seasonal offer), exit intent (emergency availability)
|
|
- **Emergency**: 24/7 banner, exit intent (don't wait), page-specific (furnace vs. AC)
|
|
- **Seasonal**: Announcement banner, service area popup, offer popup, exit popup
|
|
|
|
---
|
|
|
|
## Task-Specific Questions
|
|
|
|
1. What's your primary popup goal (estimate requests, emergency calls, seasonal offers)?
|
|
2. What's your current conversion rate?
|
|
3. What traffic sources? (organic, paid, direct)
|
|
4. Mobile vs. desktop traffic split?
|
|
5. What offers/incentives can you provide?
|
|
6. Do you have geographic service area limitations?
|
|
|
|
---
|
|
|
|
## Compendium Integration
|
|
|
|
Use Compendium to support popup optimization:
|
|
|
|
- **Behavioral analysis**: Analyze user behavior on your website (scroll depth, time on page) to optimize trigger timing
|
|
- **Conversion testing**: A/B test popup variations and measure conversion impact
|
|
- **Competitive popup audit**: Browse competitor sites to see what popup strategies and offers they use
|
|
- **Seasonal triggers**: Use weather and seasonal data to time weather-triggered popups
|
|
|
|
**Tool tiers**: Browse, analysis, A/B test tracking
|
|
|
|
---
|
|
|
|
## Related Skills
|
|
|
|
- **page-cro**: General website conversion optimization
|
|
- **copywriting**: Popup copy and messaging
|
|
- **marketing-psychology**: Urgency and trigger psychology
|
|
- **hvac-lead-ops**: Lead lifecycle after estimate request capture
|