from typing import Dict BENCHMARKS = { "Apparel & Accessories": { "retention": { "best_arc": "Hook-Feature-Benefit-Action", "best_arc_short": "HFBA", "uplift_percent": 5.8, "recommendation": "Start with strong hook, quickly show product features and benefits" }, "ctr": { "best_arc": "AIDA", "best_arc_short": "AIDA", "uplift_percent": 8.9, "recommendation": "Build desire through aspirational content before call-to-action" }, "cvr": { "best_arc": "Social-Proof-Action", "best_arc_short": "SPA", "uplift_percent": 4.6, "recommendation": "Lead with testimonials and reviews to build trust" } }, "Beauty": { "retention": { "best_arc": "Hook-Problem-Demo-Solution", "best_arc_short": "HPDS", "uplift_percent": 4.9, "recommendation": "Hook attention, show problem, demonstrate product solving it" }, "ctr": { "best_arc": "Hook-Feature-Benefit-Action", "best_arc_short": "HFBA", "uplift_percent": 2.8, "recommendation": "Focus on product features and benefits after initial hook" }, "cvr": { "best_arc": "Social-Proof-Action", "best_arc_short": "SPA", "uplift_percent": 3.7, "recommendation": "Beauty buyers respond well to testimonials and reviews" } }, "Food": { "retention": { "best_arc": "Problem-Agitate-Solution", "best_arc_short": "PAS", "uplift_percent": 6.3, "recommendation": "Amplify the problem/need before showing solution" }, "ctr": { "best_arc": "AIDA", "best_arc_short": "AIDA", "uplift_percent": 4.8, "recommendation": "Build appetite and desire psychologically" }, "cvr": { "best_arc": "Problem-Agitate-Solution", "best_arc_short": "PAS", "uplift_percent": 8.5, "recommendation": "Strong problem-solution narrative drives food conversions" } }, "Beverages": { "retention": { "best_arc": "Hook-Problem-Solution", "best_arc_short": "HPS", "uplift_percent": 4.1, "recommendation": "Quick hook into problem-solution flow" }, "ctr": { "best_arc": "Feature-Benefit-Action", "best_arc_short": "FBA", "uplift_percent": 3.9, "recommendation": "Direct product focus works for beverages" }, "cvr": { "best_arc": "Feature-Benefit-Action", "best_arc_short": "FBA", "uplift_percent": 5.1, "recommendation": "Detailed feature explanation drives beverage conversions" } }, "Other": { "retention": { "best_arc": "Hook-Feature-Benefit-Action", "best_arc_short": "HFBA", "uplift_percent": 5.0, "recommendation": "General best practice: hook + features + benefits" }, "ctr": { "best_arc": "AIDA", "best_arc_short": "AIDA", "uplift_percent": 5.0, "recommendation": "Classic AIDA funnel works across categories" }, "cvr": { "best_arc": "Social-Proof-Action", "best_arc_short": "SPA", "uplift_percent": 4.0, "recommendation": "Social proof generally effective for conversions" } } } MISSING_ELEMENT_IMPACT = { "Hook": { "impact": "+5-8% retention in first 2 seconds", "suggestion": "Add attention-grabbing opening (question, surprising visual, bold statement)" }, "Problem Setup": { "impact": "+4-6% retention", "suggestion": "Establish relatable pain point before showing product" }, "Social Proof": { "impact": "+3-5% CVR", "suggestion": "Add testimonial, review, or crowd validation before CTA" }, "Urgency Trigger": { "impact": "+2-4% CVR", "suggestion": "Add time-limited element (limited time offer, countdown)" }, "Call-to-Action": { "impact": "Critical for conversions", "suggestion": "Add clear CTA (Shop Now, Learn More, Get Started)" }, "Outcome": { "impact": "+3-5% retention and CVR", "suggestion": "Show transformation or result after using product" } } GOAL_MAPPING = { "Retention (Dwell Rate)": "retention", "Click-Through (CTR)": "ctr", "Conversions (CVR)": "cvr" } def get_benchmark(industry: str, goal: str) -> Dict: """Get benchmark data for industry and goal.""" goal_key = GOAL_MAPPING.get(goal, "retention") return BENCHMARKS.get(industry, BENCHMARKS["Other"]).get(goal_key, {}) def get_missing_element_recommendation(element: str) -> Dict: """Get recommendation for missing element.""" return MISSING_ELEMENT_IMPACT.get(element, { "impact": "May improve ad performance", "suggestion": f"Consider adding {element} to strengthen narrative" })