M Meta Signal Engine

Admin view

Test One

Intake

{
    "id": 2,
    "user_id": null,
    "business_name": "Test One",
    "business_type": "digital Product",
    "offer_name": "Find a path to start making money",
    "offer_description": "away for people to 3 possible jobs that fit their current situation to start making money fast",
    "target_customer": "people who are in need of making money now",
    "location_type": "local",
    "country": "USA",
    "city": "Tampa",
    "state": "FL",
    "service_radius": "15 miles",
    "website_url": "https://rentahand.com/earnreport",
    "facebook_url": "https://web.facebook.com/profile.php?id=61567740172866",
    "instagram_url": "",
    "google_profile_url": "",
    "price_range": "$7.99",
    "conversion_method": "landing_page",
    "budget_amount": "10.00",
    "goal": "attention",
    "creative_format": "static",
    "buyer_age_range": "24-56",
    "buyer_gender": "",
    "has_photos": 1,
    "has_video": 0,
    "has_reviews": 0,
    "has_landing_page": 1,
    "has_pixel": 0,
    "wrong_customer": "people with good paying job or businesses that dont need extra cash",
    "serious_signal": "the user takes the intake form",
    "pain_language": "i need to get some money fast",
    "readiness_score": 100,
    "readiness_level": "GREEN",
    "test_type": "Hook Test",
    "campaign_objective": "Engagement",
    "optimization_event": "Post engagement",
    "status": "generated",
    "created_at": "2026-06-11 23:19:43",
    "updated_at": "2026-06-11 23:20:59"
}

Output

{
    "id": 3,
    "ad_test_id": 2,
    "business_analysis": "{\n    \"business_classification\": {\n        \"category\": \"Lead-gen / digital info product\",\n        \"subcategory\": \"Money-making / job-path matching offer\",\n        \"is_local_business\": false,\n        \"notes\": \"The offer appears to be a digital product or landing-page funnel rather than a true local service, even though location fields are present.\"\n    },\n    \"offer_assessment\": {\n        \"summary\": \"Low-trust, high-scrutiny offer aimed at people under financial pressure.\",\n        \"likely_customer_intent\": \"Users looking for quick income ideas or job options\",\n        \"pricing_model\": \"Low-ticket digital purchase\"\n    },\n    \"meta_ad_risk_flags\": [\n        {\n            \"flag\": \"Financial vulnerability targeting\",\n            \"severity\": \"high\",\n            \"reason\": \"Targeting people who 'need making money now' and using pain-language around urgent cash needs can be seen as exploiting personal hardship.\"\n        },\n        {\n            \"flag\": \"Misleading income implication\",\n            \"severity\": \"high\",\n            \"reason\": \"Phrases like 'start making money fast' may imply fast or guaranteed earnings, which is risky if unsupported.\"\n        },\n        {\n            \"flag\": \"Employment-related compliance sensitivity\",\n            \"severity\": \"medium\",\n            \"reason\": \"The offer references jobs and making money; ads in this area can trigger review if they appear to promise employment, income, or guaranteed results.\"\n        },\n        {\n            \"flag\": \"Weak trust assets\",\n            \"severity\": \"medium\",\n            \"reason\": \"No reviews, no video, no pixel, and a fresh draft setup reduce trust and optimization quality.\"\n        },\n        {\n            \"flag\": \"Local targeting mismatch\",\n            \"severity\": \"medium\",\n            \"reason\": \"Business is labeled local with a 15-mile radius, but the product looks digital and not location-dependent.\"\n        }\n    ],\n    \"policy_risk_level\": \"high\",\n    \"primary_concerns\": [\n        \"Income claims\",\n        \"Exploitation of hardship\",\n        \"Potentially misleading outcome expectations\",\n        \"Low credibility funnel\"\n    ],\n    \"campaign_fit\": {\n        \"objective_assessment\": \"Engagement is acceptable for testing hooks, but not ideal for a purchase-oriented digital offer.\",\n        \"optimization_event_assessment\": \"Post engagement is too shallow for revenue validation.\",\n        \"test_type_assessment\": \"Hook Test is reasonable, but the hook must avoid income promises and urgency exploitation.\"\n    },\n    \"recommended_adjustments\": [\n        \"Remove any language that suggests guaranteed, fast, or easy money.\",\n        \"Shift from 'people who need money now' to a broader audience seeking career ideas, side-income education, or job-fit guidance.\",\n        \"Replace urgency-based pain copy with neutral problem framing.\",\n        \"Add clear disclosures about what the product is and what it is not.\",\n        \"Use a more trust-building landing page with proof, FAQs, and expectations.\",\n        \"If selling income-related guidance, avoid promises of earnings or specific financial outcomes.\"\n    ],\n    \"data_quality_issues\": [\n        \"Business type is informal and ambiguous.\",\n        \"Location fields conflict with a digital product model.\",\n        \"Wrong customer field indicates the target is defined by financial distress, which is risky.\",\n        \"No pixel and no reviews limit learning and credibility.\"\n    ],\n    \"overall_recommendation\": \"Proceed cautiously. This is testable as a digital information offer, but the current positioning has high Meta policy risk and should be rewritten to remove income promises and hardship-based targeting.\",\n    \"raw_interpretation\": {\n        \"category\": \"general_offer\",\n        \"plain_offer\": \"Find a path to start making money\",\n        \"what_it_is\": \"Find a path to start making money needs a scroll-stopping angle and one low-friction action.\",\n        \"likely_user_state\": \"distracted and not actively looking for the offer\",\n        \"easy_first_action\": \"click to go to the site\",\n        \"quick_result_or_experience\": \"get results of the intake\",\n        \"main_friction\": \"i dont know\",\n        \"available_proof\": [\n            \"real photos\",\n            \"website\",\n            \"Facebook page\"\n        ],\n        \"input_risks\": [],\n        \"engine_note\": \"User input is treated as raw material. The ad angle should be built for the scroll environment, not copied from the intake wording.\"\n    },\n    \"attention_angles\": [\n        {\n            \"id\": \"angle_1\",\n            \"name\": \"Urgent Cash Gap Relief\",\n            \"sample_hook\": \"Need money this week, not “someday”?\",\n            \"angle_description\": \"Position the offer as a fast-first-step path for people feeling a near-term cash crunch. Focus on immediacy, relief, and the emotional pressure of needing something practical right now.\",\n            \"attracts\": [\n                \"People under financial pressure, paycheck-to-paycheck users, gig workers, people with an urgent expense\"\n            ],\n            \"repels\": [\n                \"Stable earners, people looking for long-term business building, users who dislike urgency-led messaging\"\n            ],\n            \"signal_shortcut\": \"Time pressure language, “this week,” “right now,” “fast first step”\",\n            \"risk\": \"Can sound like hype if the promise feels too broad or too easy\",\n            \"budget_fit\": \"Strong for a $10 hook test because urgency can generate fast thumb-stops with static creative\",\n            \"why_it_might_work\": \"The pain is clear, emotionally charged, and instantly recognizable, which is ideal for interrupting scroll behavior.\",\n            \"source\": \"ai\"\n        },\n        {\n            \"id\": \"angle_2\",\n            \"name\": \"Not a Course, Just a Next Step\",\n            \"sample_hook\": \"If you’re stuck, stop buying “info” and get a next step.\",\n            \"angle_description\": \"Frame the product as a simple action-oriented path rather than education or inspiration. Emphasize practical direction over theory.\",\n            \"attracts\": [\n                \"People tired of courses, confused buyers, action-oriented users, beginners who want clarity\"\n            ],\n            \"repels\": [\n                \"Users seeking deep training, people who want full systems or coaching, overly skeptical audiences\"\n            ],\n            \"signal_shortcut\": \"Anti-course, anti-overwhelm, “one next step,” “plain English”\",\n            \"risk\": \"May underperform if the audience expects a traditional job or training product\",\n            \"budget_fit\": \"Good for small-budget testing because the contrast is easy to communicate in a static image\",\n            \"why_it_might_work\": \"It cuts through market noise by rejecting the common “learn more” pattern and promising simplicity.\",\n            \"source\": \"ai\"\n        },\n        {\n            \"id\": \"angle_3\",\n            \"name\": \"Three Realistic Options\",\n            \"sample_hook\": \"Don’t know what fits you? Get 3 options that match your situation.\",\n            \"angle_description\": \"Position the offer around decision relief. Instead of selling one fixed method, sell a quick way to see multiple paths based on the person’s current situation.\",\n            \"attracts\": [\n                \"Indecisive users, overwhelmed beginners, people who don’t know where to start, users with limited time\"\n            ],\n            \"repels\": [\n                \"Highly specific job seekers, users who already know exactly what they want, people expecting a done-for-you solution\"\n            ],\n            \"signal_shortcut\": \"Choice, matching, fit, “based on your situation”\",\n            \"risk\": \"Can feel generic if the outcomes are not visibly different or concrete\",\n            \"budget_fit\": \"Excellent for a small budget because curiosity and self-identification can drive engagement cheaply\",\n            \"why_it_might_work\": \"People often stop scrolling when they feel an offer is about them personally and not just a broad promise.\",\n            \"source\": \"ai\"\n        },\n        {\n            \"id\": \"angle_4\",\n            \"name\": \"For the Broke-but-Not-Broken\",\n            \"sample_hook\": \"If your bank account is low but you’re still trying, read this.\",\n            \"angle_description\": \"Use empathetic identity messaging for people who are struggling but not giving up. The angle is about dignity, resilience, and practical action.\",\n            \"attracts\": [\n                \"People who feel embarrassed about money stress, job-seekers, restart users, parents, hourly workers\"\n            ],\n            \"repels\": [\n                \"People who prefer polished, aspirational messaging, high-income audiences, business owners\"\n            ],\n            \"signal_shortcut\": \"Resilience language, “still trying,” “starting from where you are”\",\n            \"risk\": \"Can drift into vague inspiration if the offer is not clearly practical\",\n            \"budget_fit\": \"Good fit for static ads because emotional identity copy can be strong without production cost\",\n            \"why_it_might_work\": \"This audience often responds to messaging that feels understood rather than marketed to.\",\n            \"source\": \"ai\"\n        },\n        {\n            \"id\": \"angle_5\",\n            \"name\": \"Low-Cost Entry Point\",\n            \"sample_hook\": \"Want a simple way to start for less than $8?\",\n            \"angle_description\": \"Lean into the low price as the friction reducer. Sell the idea that the user can take a small, low-risk first step without a big commitment.\",\n            \"attracts\": [\n                \"Price-sensitive users, skeptics, cautious buyers, people who want to test before spending more\"\n            ],\n            \"repels\": [\n                \"Users who equate low price with low value, buyers wanting premium support or high-touch help\"\n            ],\n            \"signal_shortcut\": \"Low cost, tiny commitment, low-risk trial\",\n            \"risk\": \"The price can attract clicks from bargain hunters who are less likely to convert or engage seriously\",\n            \"budget_fit\": \"Very strong for a $10 test because price-based hooks are easy to understand instantly\",\n            \"why_it_might_work\": \"A small purchase can feel emotionally safer than a large commitment, which lowers attention friction.\",\n            \"source\": \"ai\"\n        },\n        {\n            \"id\": \"angle_6\",\n            \"name\": \"Beginner-Friendly Reset\",\n            \"sample_hook\": \"No experience? That’s the point.\",\n            \"angle_description\": \"Target people who feel shut out by job ads, side hustles, or complex make-money systems. Position the offer as accessible to beginners with no special background.\",\n            \"attracts\": [\n                \"Beginners, people with limited skills, users returning to work, people who feel behind\"\n            ],\n            \"repels\": [\n                \"Experienced freelancers, advanced users, people looking for sophisticated tactics\"\n            ],\n            \"signal_shortcut\": \"No experience needed, easy start, simple path\",\n            \"risk\": \"Can attract users who want unrealistic ease if the promise isn’t carefully framed\",\n            \"budget_fit\": \"Good for low-budget testing because the message is easy to visualize and emotionally direct\",\n            \"why_it_might_work\": \"Many people scroll past money offers because they assume they’re not qualified; this angle removes that barrier.\",\n            \"source\": \"ai\"\n        },\n        {\n            \"id\": \"angle_7\",\n            \"name\": \"Local-Life Pressure\",\n            \"sample_hook\": \"Living in Tampa and need a quick money plan?\",\n            \"angle_description\": \"Localize the message to make it feel more immediate and relevant. The angle suggests a nearby, real-world fit rather than a generic internet offer.\",\n            \"attracts\": [\n                \"Local residents, community-minded users, people who respond to geographic relevance\"\n            ],\n            \"repels\": [\n                \"Users outside the area, people who don’t care about local framing, remote-only workers\"\n            ],\n            \"signal_shortcut\": \"City name, local relevance, nearby fit\",\n            \"risk\": \"May narrow reach too much if the audience size is small\",\n            \"budget_fit\": \"Moderate fit for a $10 test; useful if the local identity is important, but reach may be limited\",\n            \"why_it_might_work\": \"Location specificity can improve attention by making the ad feel more immediate and less like a mass-market pitch\",\n            \"source\": \"ai\"\n        }\n    ],\n    \"signal_shortcut\": {\n        \"shortcut_action\": \"the user takes the intake form\",\n        \"why_this_shortcut\": \"The action is small enough to ask for early, but specific enough to reveal whether the person is relevant.\",\n        \"signal_ladder\": [\n            {\n                \"level\": \"weak\",\n                \"action\": \"View, like, click, or save\",\n                \"means\": \"Attention only.\"\n            },\n            {\n                \"level\": \"useful\",\n                \"action\": \"click to go to the site\",\n                \"means\": \"The viewer took a small action that reveals context.\"\n            },\n            {\n                \"level\": \"strong\",\n                \"action\": \"the user takes the intake form\",\n                \"means\": \"The signal is tied to a real need.\"\n            },\n            {\n                \"level\": \"money\",\n                \"action\": \"Asks price, books, buys, or starts checkout\",\n                \"means\": \"Commercial intent.\"\n            }\n        ],\n        \"warning\": \"A small-budget test should be judged by the first real signal, not by vanity engagement or statistical certainty.\"\n    },\n    \"angle_decision\": {\n        \"test_question\": \"Can the Urgent Cash Gap Relief angle make the right person stop scrolling and take this shortcut action: the user takes the intake form?\",\n        \"selected_angle\": {\n            \"id\": \"angle_1\",\n            \"name\": \"Urgent Cash Gap Relief\",\n            \"sample_hook\": \"Need money this week, not “someday”?\",\n            \"angle_description\": \"Position the offer as a fast-first-step path for people feeling a near-term cash crunch. Focus on immediacy, relief, and the emotional pressure of needing something practical right now.\",\n            \"attracts\": [\n                \"People under financial pressure, paycheck-to-paycheck users, gig workers, people with an urgent expense\"\n            ],\n            \"repels\": [\n                \"Stable earners, people looking for long-term business building, users who dislike urgency-led messaging\"\n            ],\n            \"signal_shortcut\": \"Time pressure language, “this week,” “right now,” “fast first step”\",\n            \"risk\": \"Can sound like hype if the promise feels too broad or too easy\",\n            \"budget_fit\": \"Strong for a $10 hook test because urgency can generate fast thumb-stops with static creative\",\n            \"why_it_might_work\": \"The pain is clear, emotionally charged, and instantly recognizable, which is ideal for interrupting scroll behavior.\",\n            \"source\": \"ai\",\n            \"scores\": {\n                \"scroll_stop_power\": 6,\n                \"buyer_relevance\": 7,\n                \"friction_removal\": 6,\n                \"signal_clarity\": 7,\n                \"budget_fit\": 7,\n                \"total\": 33\n            }\n        },\n        \"all_angle_scores\": [\n            {\n                \"id\": \"angle_1\",\n                \"name\": \"Urgent Cash Gap Relief\",\n                \"sample_hook\": \"Need money this week, not “someday”?\",\n                \"angle_description\": \"Position the offer as a fast-first-step path for people feeling a near-term cash crunch. Focus on immediacy, relief, and the emotional pressure of needing something practical right now.\",\n                \"attracts\": [\n                    \"People under financial pressure, paycheck-to-paycheck users, gig workers, people with an urgent expense\"\n                ],\n                \"repels\": [\n                    \"Stable earners, people looking for long-term business building, users who dislike urgency-led messaging\"\n                ],\n                \"signal_shortcut\": \"Time pressure language, “this week,” “right now,” “fast first step”\",\n                \"risk\": \"Can sound like hype if the promise feels too broad or too easy\",\n                \"budget_fit\": \"Strong for a $10 hook test because urgency can generate fast thumb-stops with static creative\",\n                \"why_it_might_work\": \"The pain is clear, emotionally charged, and instantly recognizable, which is ideal for interrupting scroll behavior.\",\n                \"source\": \"ai\",\n                \"scores\": {\n                    \"scroll_stop_power\": 6,\n                    \"buyer_relevance\": 7,\n                    \"friction_removal\": 6,\n                    \"signal_clarity\": 7,\n                    \"budget_fit\": 7,\n                    \"total\": 33\n                }\n            },\n            {\n                \"id\": \"angle_2\",\n                \"name\": \"Not a Course, Just a Next Step\",\n                \"sample_hook\": \"If you’re stuck, stop buying “info” and get a next step.\",\n                \"angle_description\": \"Frame the product as a simple action-oriented path rather than education or inspiration. Emphasize practical direction over theory.\",\n                \"attracts\": [\n                    \"People tired of courses, confused buyers, action-oriented users, beginners who want clarity\"\n                ],\n                \"repels\": [\n                    \"Users seeking deep training, people who want full systems or coaching, overly skeptical audiences\"\n                ],\n                \"signal_shortcut\": \"Anti-course, anti-overwhelm, “one next step,” “plain English”\",\n                \"risk\": \"May underperform if the audience expects a traditional job or training product\",\n                \"budget_fit\": \"Good for small-budget testing because the contrast is easy to communicate in a static image\",\n                \"why_it_might_work\": \"It cuts through market noise by rejecting the common “learn more” pattern and promising simplicity.\",\n                \"source\": \"ai\",\n                \"scores\": {\n                    \"scroll_stop_power\": 6,\n                    \"buyer_relevance\": 7,\n                    \"friction_removal\": 6,\n                    \"signal_clarity\": 7,\n                    \"budget_fit\": 7,\n                    \"total\": 33\n                }\n            },\n            {\n                \"id\": \"angle_3\",\n                \"name\": \"Three Realistic Options\",\n                \"sample_hook\": \"Don’t know what fits you? Get 3 options that match your situation.\",\n                \"angle_description\": \"Position the offer around decision relief. Instead of selling one fixed method, sell a quick way to see multiple paths based on the person’s current situation.\",\n                \"attracts\": [\n                    \"Indecisive users, overwhelmed beginners, people who don’t know where to start, users with limited time\"\n                ],\n                \"repels\": [\n                    \"Highly specific job seekers, users who already know exactly what they want, people expecting a done-for-you solution\"\n                ],\n                \"signal_shortcut\": \"Choice, matching, fit, “based on your situation”\",\n                \"risk\": \"Can feel generic if the outcomes are not visibly different or concrete\",\n                \"budget_fit\": \"Excellent for a small budget because curiosity and self-identification can drive engagement cheaply\",\n                \"why_it_might_work\": \"People often stop scrolling when they feel an offer is about them personally and not just a broad promise.\",\n                \"source\": \"ai\",\n                \"scores\": {\n                    \"scroll_stop_power\": 6,\n                    \"buyer_relevance\": 7,\n                    \"friction_removal\": 6,\n                    \"signal_clarity\": 7,\n                    \"budget_fit\": 7,\n                    \"total\": 33\n                }\n            },\n            {\n                \"id\": \"angle_4\",\n                \"name\": \"For the Broke-but-Not-Broken\",\n                \"sample_hook\": \"If your bank account is low but you’re still trying, read this.\",\n                \"angle_description\": \"Use empathetic identity messaging for people who are struggling but not giving up. The angle is about dignity, resilience, and practical action.\",\n                \"attracts\": [\n                    \"People who feel embarrassed about money stress, job-seekers, restart users, parents, hourly workers\"\n                ],\n                \"repels\": [\n                    \"People who prefer polished, aspirational messaging, high-income audiences, business owners\"\n                ],\n                \"signal_shortcut\": \"Resilience language, “still trying,” “starting from where you are”\",\n                \"risk\": \"Can drift into vague inspiration if the offer is not clearly practical\",\n                \"budget_fit\": \"Good fit for static ads because emotional identity copy can be strong without production cost\",\n                \"why_it_might_work\": \"This audience often responds to messaging that feels understood rather than marketed to.\",\n                \"source\": \"ai\",\n                \"scores\": {\n                    \"scroll_stop_power\": 6,\n                    \"buyer_relevance\": 7,\n                    \"friction_removal\": 6,\n                    \"signal_clarity\": 7,\n                    \"budget_fit\": 7,\n                    \"total\": 33\n                }\n            },\n            {\n                \"id\": \"angle_5\",\n                \"name\": \"Low-Cost Entry Point\",\n                \"sample_hook\": \"Want a simple way to start for less than $8?\",\n                \"angle_description\": \"Lean into the low price as the friction reducer. Sell the idea that the user can take a small, low-risk first step without a big commitment.\",\n                \"attracts\": [\n                    \"Price-sensitive users, skeptics, cautious buyers, people who want to test before spending more\"\n                ],\n                \"repels\": [\n                    \"Users who equate low price with low value, buyers wanting premium support or high-touch help\"\n                ],\n                \"signal_shortcut\": \"Low cost, tiny commitment, low-risk trial\",\n                \"risk\": \"The price can attract clicks from bargain hunters who are less likely to convert or engage seriously\",\n                \"budget_fit\": \"Very strong for a $10 test because price-based hooks are easy to understand instantly\",\n                \"why_it_might_work\": \"A small purchase can feel emotionally safer than a large commitment, which lowers attention friction.\",\n                \"source\": \"ai\",\n                \"scores\": {\n                    \"scroll_stop_power\": 6,\n                    \"buyer_relevance\": 7,\n                    \"friction_removal\": 6,\n                    \"signal_clarity\": 7,\n                    \"budget_fit\": 7,\n                    \"total\": 33\n                }\n            },\n            {\n                \"id\": \"angle_6\",\n                \"name\": \"Beginner-Friendly Reset\",\n                \"sample_hook\": \"No experience? That’s the point.\",\n                \"angle_description\": \"Target people who feel shut out by job ads, side hustles, or complex make-money systems. Position the offer as accessible to beginners with no special background.\",\n                \"attracts\": [\n                    \"Beginners, people with limited skills, users returning to work, people who feel behind\"\n                ],\n                \"repels\": [\n                    \"Experienced freelancers, advanced users, people looking for sophisticated tactics\"\n                ],\n                \"signal_shortcut\": \"No experience needed, easy start, simple path\",\n                \"risk\": \"Can attract users who want unrealistic ease if the promise isn’t carefully framed\",\n                \"budget_fit\": \"Good for low-budget testing because the message is easy to visualize and emotionally direct\",\n                \"why_it_might_work\": \"Many people scroll past money offers because they assume they’re not qualified; this angle removes that barrier.\",\n                \"source\": \"ai\",\n                \"scores\": {\n                    \"scroll_stop_power\": 6,\n                    \"buyer_relevance\": 7,\n                    \"friction_removal\": 6,\n                    \"signal_clarity\": 7,\n                    \"budget_fit\": 7,\n                    \"total\": 33\n                }\n            },\n            {\n                \"id\": \"angle_7\",\n                \"name\": \"Local-Life Pressure\",\n                \"sample_hook\": \"Living in Tampa and need a quick money plan?\",\n                \"angle_description\": \"Localize the message to make it feel more immediate and relevant. The angle suggests a nearby, real-world fit rather than a generic internet offer.\",\n                \"attracts\": [\n                    \"Local residents, community-minded users, people who respond to geographic relevance\"\n                ],\n                \"repels\": [\n                    \"Users outside the area, people who don’t care about local framing, remote-only workers\"\n                ],\n                \"signal_shortcut\": \"City name, local relevance, nearby fit\",\n                \"risk\": \"May narrow reach too much if the audience size is small\",\n                \"budget_fit\": \"Moderate fit for a $10 test; useful if the local identity is important, but reach may be limited\",\n                \"why_it_might_work\": \"Location specificity can improve attention by making the ad feel more immediate and less like a mass-market pitch\",\n                \"source\": \"ai\",\n                \"scores\": {\n                    \"scroll_stop_power\": 6,\n                    \"buyer_relevance\": 7,\n                    \"friction_removal\": 6,\n                    \"signal_clarity\": 7,\n                    \"budget_fit\": 7,\n                    \"total\": 33\n                }\n            }\n        ],\n        \"selected_shortcut\": \"Time pressure language, “this week,” “right now,” “fast first step”\",\n        \"selection_reason\": \"Human selected this angle. The engine will now build the Meta test around this chosen direction instead of guessing the final direction automatically.\",\n        \"budget_truth\": \"$10 can catch attention and possibly one useful signal, but it cannot prove lead economics.\",\n        \"human_selected\": true\n    },\n    \"angle_stage\": \"human_selected\"\n}",
    "creative_output": "{\n    \"hook\": \"Need a fast next step this week?\",\n    \"visual_direction\": \"Static image with a bold, high-contrast headline over a simple phone-screen mockup showing a short intake form and three numbered options. Use a calm, urgent color palette (dark background, white text, one accent color). Add a small badge that says \\\"3 options matched to your situation\\\". Keep the design plain and practical, not hypey or money-stack themed.\",\n    \"primary_text\": \"If your income feels tight and you just need a clear starting point, this is built to cut through the noise. Take a short intake form and get 3 possible paths that fit where you are right now. No long course, no guesswork, no fluff.\\n\\nIf you already have a solid job or you’re not looking for a quick reset, skip this.\\n\\nTap through and see what fits.\",\n    \"headline\": \"Get 3 Paths That Fit Your Situation\",\n    \"cta\": \"Take the Intake\",\n    \"repels\": [\n        \"People with stable income who are just browsing\",\n        \"Business owners looking for scaling advice\",\n        \"Anyone expecting guaranteed earnings\",\n        \"Users who want a full course instead of a quick next step\"\n    ],\n    \"buyer_signal\": \"Completing the intake form indicates real need and actual consideration, not just curiosity.\",\n    \"angle_used\": \"Urgent Cash Gap Relief\",\n    \"test_question\": \"Can a simple urgent-next-step message make the right person stop scrolling and take the intake form?\",\n    \"signal_shortcut\": \"the user takes the intake form\"\n}",
    "setup_output": "{\n    \"campaign_setup\": {\n        \"objective\": \"Engagement\",\n        \"optimization_event\": \"Post engagement\",\n        \"budget_type\": \"Daily budget\",\n        \"daily_budget\": 5,\n        \"duration_days\": 2\n    },\n    \"ad_set_setup\": {\n        \"placements\": [\n            \"Facebook Feed\",\n            \"Instagram Feed\"\n        ],\n        \"placement_rules\": [\n            {\n                \"setting\": \"Advantage+ placements\",\n                \"action\": \"Turn off\"\n            },\n            {\n                \"setting\": \"Audience Network\",\n                \"action\": \"Turn off\"\n            },\n            {\n                \"setting\": \"In-stream video\",\n                \"action\": \"Turn off\"\n            },\n            {\n                \"setting\": \"Stories\",\n                \"action\": \"Turn off unless story-native vertical creative is used\"\n            }\n        ],\n        \"audience\": {\n            \"location\": {\n                \"type\": \"local\",\n                \"location\": \"Tampa, FL USA\",\n                \"radius\": \"15 miles\"\n            },\n            \"age\": {\n                \"min\": 24,\n                \"max\": 56\n            },\n            \"gender\": \"All, unless the offer is truly gender-specific\",\n            \"detailed_targeting\": \"Use minimal detailed targeting. Let the hook self-qualify.\",\n            \"detailed_targeting_rules\": [\n                {\n                    \"setting\": \"Detailed targeting expansion\",\n                    \"action\": \"Turn off where possible\"\n                }\n            ],\n            \"note\": \"Location is the strongest hard fence for local businesses.\"\n        }\n    },\n    \"ad_setup\": {\n        \"creative_rules\": [\n            {\n                \"setting\": \"Automatic creative enhancements\",\n                \"action\": \"Turn off\"\n            },\n            {\n                \"setting\": \"AI text variations\",\n                \"action\": \"Turn off\"\n            },\n            {\n                \"setting\": \"Multi-advertiser ads\",\n                \"action\": \"Turn off\"\n            }\n        ],\n        \"setup_note\": \"Static creative at this budget should test qualified reactions, not sales.\"\n    },\n    \"checks\": {\n        \"6_hours\": \"Review early engagement quality and confirm delivery is active.\",\n        \"24_hours\": \"Review performance and audience quality. Make no optimization changes unless clearly broken.\",\n        \"48_hours_hard_pause\": \"Pause the ad after 48 hours.\"\n    }\n}",
    "pacing_output": "{\n    \"daily_budget\": 5,\n    \"duration_days\": 2,\n    \"checkpoints\": [\n        \"6 hours\",\n        \"24 hours\",\n        \"48 hours hard pause\"\n    ],\n    \"note\": \"Use daily budget and manually pause.\"\n}",
    "kill_rules_output": "{\n    \"kill\": [\n        \"Less than 500 impressions after 48 hours at $5+/day: pause and check ad review, audience size, or account delivery.\",\n        \"Mostly spam, emoji-only comments, or unrelated messages: change audience/creative before spending more.\",\n        \"People misunderstand the offer: revise the hook or CTA before increasing budget.\",\n        \"After full spend, no useful views/engagement and no soft signal: kill this hook.\",\n        \"Video 50% hold rate below 10%: first 3 seconds failed.\"\n    ],\n    \"continue\": [\n        \"Clear hold/engagement signal from the right kind of viewer.\",\n        \"A real comment, save, or profile visit tied to the problem.\"\n    ],\n    \"scale_only_if\": [\n        \"Primary metric beats the threshold.\",\n        \"Buyer signal is real, not vanity engagement.\",\n        \"No major negative-comment or misunderstanding issue.\"\n    ]\n}",
    "outcome_prediction": "{\n    \"best_case\": {\n        \"what_happens\": \"The ad gets enough attention for a tiny test, and the message clearly resonates with people who are stressed about money. You may see a few clicks and a small number of intake completions from highly self-selected users.\",\n        \"likely_numbers\": {\n            \"impressions\": \"200-500\",\n            \"link_click_through_rate\": \"1.0%-2.5%\",\n            \"intake_completion_rate_from_clicks\": \"5%-15%\",\n            \"completed_intakes\": \"1-3\"\n        },\n        \"meaning\": \"This would suggest the hook and problem framing can stop the right kind of person, but it still would not prove strong offer demand or profitable acquisition.\"\n    },\n    \"normal_case\": {\n        \"what_happens\": \"Most likely the ad gets limited delivery because the budget is very small and the objective is engagement, not conversion. You may get some post engagement or a few clicks, but very little signal on true buyer intent.\",\n        \"likely_numbers\": {\n            \"impressions\": \"150-400\",\n            \"link_click_through_rate\": \"0.5%-1.5%\",\n            \"intake_completion_rate_from_clicks\": \"0%-10%\",\n            \"completed_intakes\": \"0-1\"\n        },\n        \"meaning\": \"This would mostly tell you whether the creative is understandable and mildly attention-grabbing, not whether the offer is compelling enough to drive leads at scale.\"\n    },\n    \"bad_case\": {\n        \"what_happens\": \"The ad underperforms due to weak trust, a vague offer, a likely sensitive-money angle, and a mismatch between engagement objective and desired action. Delivery may be tiny, clicks may be low-quality, and no intake forms are completed.\",\n        \"likely_numbers\": {\n            \"impressions\": \"100-250\",\n            \"link_click_through_rate\": \"0.2%-0.8%\",\n            \"intake_completion_rate_from_clicks\": \"0%-5%\",\n            \"completed_intakes\": \"0\"\n        },\n        \"meaning\": \"This would suggest the hook is not strong enough or the audience is not responding, but it still would not separate creative failure from platform-delivery limits or landing-page friction.\"\n    },\n    \"what_not_to_conclude\": [\n        \"Do not conclude the offer has no demand if the test gets few or no completions.\",\n        \"Do not conclude the audience is bad if the campaign objective is engagement instead of conversions.\",\n        \"Do not conclude the landing page is ineffective from a tiny sample size.\",\n        \"Do not conclude price sensitivity or willingness to buy from engagement-only data.\",\n        \"Do not conclude the ad can scale profitably based on a handful of clicks or views.\"\n    ]\n}",
    "full_report": "<section class=\"report-section intro-callout\">\n<h2>Attention Test Path</h2>\n<p><strong>Test question:</strong> Can the Urgent Cash Gap Relief angle make the right person stop scrolling and take this shortcut action: the user takes the intake form?</p>\n<p><strong>Selected angle:</strong> Urgent Cash Gap Relief</p>\n<p><strong>Signal shortcut:</strong> Time pressure language, “this week,” “right now,” “fast first step”</p>\n<p class=\"muted\">$10 can catch attention and possibly one useful signal, but it cannot prove lead economics.</p>\n</section>\n\n<section class=\"report-section\">\n<h2>Test Summary</h2>\n<div class=\"grid two\"><div><strong>Business:</strong> Test One</div><div><strong>Offer:</strong> Find a path to start making money</div><div><strong>Budget:</strong> $10.00</div><div><strong>Test Type:</strong> Hook Test</div><div><strong>Primary Metric:</strong> 3-second video views, ThruPlay, or post engagement</div><div><strong>Objective:</strong> Engagement</div></div>\n</section>\n\n<section class=\"report-section\"><h2>Raw Input Interpretation</h2>\n<div class=\"grid two\">\n<div><strong>Category:</strong> general_offer</div>\n<div><strong>Likely user state:</strong> distracted and not actively looking for the offer</div>\n<div class=\"wide\"><strong>What the engine thinks this is:</strong> Find a path to start making money needs a scroll-stopping angle and one low-friction action.</div>\n<div><strong>Easy first action:</strong> click to go to the site</div>\n<div><strong>Fast result/experience:</strong> get results of the intake</div>\n<div class=\"wide\"><strong>Main friction:</strong> i dont know</div>\n</div>\n<p class=\"muted\">User input is treated as raw material. The ad angle should be built for the scroll environment, not copied from the intake wording.</p>\n</section>\n\n<section class=\"report-section\"><h2>Possible Attention Angles</h2>\n<p>The engine does not stay loyal to weak user wording. It creates scroll-first routes and scores them for this budget.</p>\n<div class=\"angle-list\">\n<div class=\"mini-card\">\n<h3>Urgent Cash Gap Relief <span class=\"badge\">Selected</span></h3>\n<p><strong>Sample hook:</strong> Need money this week, not “someday”?</p>\n<p><strong>Why:</strong> The pain is clear, emotionally charged, and instantly recognizable, which is ideal for interrupting scroll behavior.</p>\n<p class=\"muted\"><strong>Score:</strong> 33 / 50 — Scroll 6, Relevance 7, Friction 6, Signal 7, Budget 7</p></div>\n<div class=\"mini-card\">\n<h3>Not a Course, Just a Next Step </h3>\n<p><strong>Sample hook:</strong> If you’re stuck, stop buying “info” and get a next step.</p>\n<p><strong>Why:</strong> It cuts through market noise by rejecting the common “learn more” pattern and promising simplicity.</p>\n<p class=\"muted\"><strong>Score:</strong> 33 / 50 — Scroll 6, Relevance 7, Friction 6, Signal 7, Budget 7</p></div>\n<div class=\"mini-card\">\n<h3>Three Realistic Options </h3>\n<p><strong>Sample hook:</strong> Don’t know what fits you? Get 3 options that match your situation.</p>\n<p><strong>Why:</strong> People often stop scrolling when they feel an offer is about them personally and not just a broad promise.</p>\n<p class=\"muted\"><strong>Score:</strong> 33 / 50 — Scroll 6, Relevance 7, Friction 6, Signal 7, Budget 7</p></div>\n<div class=\"mini-card\">\n<h3>For the Broke-but-Not-Broken </h3>\n<p><strong>Sample hook:</strong> If your bank account is low but you’re still trying, read this.</p>\n<p><strong>Why:</strong> This audience often responds to messaging that feels understood rather than marketed to.</p>\n<p class=\"muted\"><strong>Score:</strong> 33 / 50 — Scroll 6, Relevance 7, Friction 6, Signal 7, Budget 7</p></div>\n<div class=\"mini-card\">\n<h3>Low-Cost Entry Point </h3>\n<p><strong>Sample hook:</strong> Want a simple way to start for less than $8?</p>\n<p><strong>Why:</strong> A small purchase can feel emotionally safer than a large commitment, which lowers attention friction.</p>\n<p class=\"muted\"><strong>Score:</strong> 33 / 50 — Scroll 6, Relevance 7, Friction 6, Signal 7, Budget 7</p></div>\n<div class=\"mini-card\">\n<h3>Beginner-Friendly Reset </h3>\n<p><strong>Sample hook:</strong> No experience? That’s the point.</p>\n<p><strong>Why:</strong> Many people scroll past money offers because they assume they’re not qualified; this angle removes that barrier.</p>\n<p class=\"muted\"><strong>Score:</strong> 33 / 50 — Scroll 6, Relevance 7, Friction 6, Signal 7, Budget 7</p></div>\n</div>\n<p><strong>Selection reason:</strong> Human selected this angle. The engine will now build the Meta test around this chosen direction instead of guessing the final direction automatically.</p>\n</section>\n\n<section class=\"report-section\"><h2>Signal Shortcut</h2>\n<p><strong>Shortcut action:</strong> the user takes the intake form</p>\n<p><strong>Why this shortcut:</strong> The action is small enough to ask for early, but specific enough to reveal whether the person is relevant.</p>\n<h3>Signal ladder</h3><ul><li><strong>weak:</strong> View, like, click, or save — Attention only.</li><li><strong>useful:</strong> click to go to the site — The viewer took a small action that reveals context.</li><li><strong>strong:</strong> the user takes the intake form — The signal is tied to a real need.</li><li><strong>money:</strong> Asks price, books, buys, or starts checkout — Commercial intent.</li></ul><p class=\"muted\">A small-budget test should be judged by the first real signal, not by vanity engagement or statistical certainty.</p>\n</section>\n\n<section class=\"report-section\"><h2>Readiness Score</h2><p class=\"score green\">100/100 — GREEN</p><p>Ready to test.</p></section>\n\n<section class=\"report-section\"><h2>The Ad</h2><h3>Hook</h3><p class=\"copybox\">Need a fast next step this week?</p><h3>Primary Text</h3><p class=\"copybox\">If your income feels tight and you just need a clear starting point, this is built to cut through the noise. Take a short intake form and get 3 possible paths that fit where you are right now. No long course, no guesswork, no fluff.<br />\n<br />\nIf you already have a solid job or you’re not looking for a quick reset, skip this.<br />\n<br />\nTap through and see what fits.</p><h3>Headline</h3><p class=\"copybox\">Get 3 Paths That Fit Your Situation</p><h3>CTA</h3><p class=\"copybox\">Take the Intake</p><h3>Visual Direction</h3><p>Static image with a bold, high-contrast headline over a simple phone-screen mockup showing a short intake form and three numbered options. Use a calm, urgent color palette (dark background, white text, one accent color). Add a small badge that says &quot;3 options matched to your situation&quot;. Keep the design plain and practical, not hypey or money-stack themed.</p></section>\n\n<section class=\"report-section\"><h2>Bouncer Logic</h2><h3>Who this repels</h3><ul><li>People with stable income who are just browsing</li><li>Business owners looking for scaling advice</li><li>Anyone expecting guaranteed earnings</li><li>Users who want a full course instead of a quick next step</li></ul><h3>Buyer signal to watch</h3><p>Completing the intake form indicates real need and actual consideration, not just curiosity.</p></section>\n\n<section class=\"report-section\"><h2>Meta Ads Manager Instructions</h2><div class=\"grid two\"><div><strong>Campaign Objective:</strong> Engagement</div><div><strong>Optimization:</strong> Post engagement</div><div><strong>Daily Budget:</strong> $5.00</div><div><strong>Duration:</strong> 2 days</div><div><strong>Audience:</strong> Tampa, FL USA / 24-56 / All, unless the offer is truly gender-specific</div><div><strong>Placements:</strong> </div></div><h3>Turn Off</h3><ul></ul></section>\n\n<section class=\"report-section\"><h2>Expected Outcomes</h2><ul><li><strong>Best:</strong> What Happens: The ad gets enough attention for a tiny test, and the message clearly resonates with people who are stressed about money. You may see a few clicks and a small number of intake completions from highly self-selected users.; Likely Numbers: Impressions: 200-500; Link Click Through Rate: 1.0%-2.5%; Intake Completion Rate From Clicks: 5%-15%; Completed Intakes: 1-3; Meaning: This would suggest the hook and problem framing can stop the right kind of person, but it still would not prove strong offer demand or profitable acquisition.</li><li><strong>Normal:</strong> What Happens: Most likely the ad gets limited delivery because the budget is very small and the objective is engagement, not conversion. You may get some post engagement or a few clicks, but very little signal on true buyer intent.; Likely Numbers: Impressions: 150-400; Link Click Through Rate: 0.5%-1.5%; Intake Completion Rate From Clicks: 0%-10%; Completed Intakes: 0-1; Meaning: This would mostly tell you whether the creative is understandable and mildly attention-grabbing, not whether the offer is compelling enough to drive leads at scale.</li><li><strong>Bad:</strong> What Happens: The ad underperforms due to weak trust, a vague offer, a likely sensitive-money angle, and a mismatch between engagement objective and desired action. Delivery may be tiny, clicks may be low-quality, and no intake forms are completed.; Likely Numbers: Impressions: 100-250; Link Click Through Rate: 0.2%-0.8%; Intake Completion Rate From Clicks: 0%-5%; Completed Intakes: 0; Meaning: This would suggest the hook is not strong enough or the audience is not responding, but it still would not separate creative failure from platform-delivery limits or landing-page friction.</li><li><strong>Do not conclude:</strong> Do not conclude the offer has no demand if the test gets few or no completions., Do not conclude the audience is bad if the campaign objective is engagement instead of conversions., Do not conclude the landing page is ineffective from a tiny sample size., Do not conclude price sensitivity or willingness to buy from engagement-only data., Do not conclude the ad can scale profitably based on a handful of clicks or views.</li></ul></section>\n\n<section class=\"report-section\"><h2>Kill Rules</h2><h3>Pause / Kill / Change if</h3><ul><li>Less than 500 impressions after 48 hours at $5+/day: pause and check ad review, audience size, or account delivery.</li><li>Mostly spam, emoji-only comments, or unrelated messages: change audience/creative before spending more.</li><li>People misunderstand the offer: revise the hook or CTA before increasing budget.</li><li>After full spend, no useful views/engagement and no soft signal: kill this hook.</li><li>Video 50% hold rate below 10%: first 3 seconds failed.</li></ul><h3>Continue if</h3><ul><li>Clear hold/engagement signal from the right kind of viewer.</li><li>A real comment, save, or profile visit tied to the problem.</li></ul><h3>Scale only if</h3><ul><li>Primary metric beats the threshold.</li><li>Buyer signal is real, not vanity engagement.</li><li>No major negative-comment or misunderstanding issue.</li></ul></section>\n\n<section class=\"report-section\"><h2>Copy/Paste Launch Checklist</h2><div class=\"checklist\"><label><input type=\"checkbox\"> Create campaign</label><label><input type=\"checkbox\"> Choose objective above</label><label><input type=\"checkbox\"> Set budget and hard end date</label><label><input type=\"checkbox\"> Use manual placements</label><label><input type=\"checkbox\"> Turn off listed automation settings</label><label><input type=\"checkbox\"> Add creative exactly as written</label><label><input type=\"checkbox\"> Check at first checkpoint</label><label><input type=\"checkbox\"> Pause at hard stop</label></div></section>\n",
    "created_at": "2026-06-11 23:20:59"
}

Result

[]

Decision

[]