Influencer Campaign Planner
Run ID: 69cb30ca61b1021a29a86c262026-03-31Marketing
PantheraHive BOS
BOS Dashboard

Plan an influencer marketing campaign with ideal influencer profiles, outreach templates, contract terms, content guidelines, and ROI tracking framework.

Step 1 of 3: Audience Analysis for Influencer Campaign Planning

This document provides a comprehensive analysis of the target audience, a critical first step in developing an effective influencer marketing campaign. Understanding who we want to reach allows us to identify the most relevant influencers, craft compelling messages, and optimize campaign performance.


1. Executive Summary

A deep understanding of the target audience is paramount for influencer campaign success. This analysis outlines key demographic, psychographic, and behavioral insights, identifies their pain points and aspirations, and details their content consumption habits. The goal is to provide a data-driven foundation for selecting ideal influencer profiles, developing authentic content guidelines, and ensuring a strong return on investment (ROI). By focusing on audience-centric insights, we aim to connect with consumers on a deeper level, fostering trust and driving measurable action.


2. Core Target Audience Segmentation (Hypothetical Framework)

To illustrate the depth of analysis required, we will outline a framework for segmenting a hypothetical target audience. For a real campaign, this section would be populated with specific data points relevant to your product/service.

Primary Audience Segment: "The Conscious Explorer"

  • Demographics:

* Age: 25-45 years old (Millennials and younger Gen X)

* Gender: Skews female (60%), but significant male representation (40%).

* Location: Primarily urban and suburban areas in developed countries; digitally native.

* Income: Mid to upper-middle income, disposable income for experiences and premium products.

* Education: College-educated or higher.

* Occupation: Professionals, creatives, entrepreneurs.

  • Psychographics:

* Interests: Sustainable living, health & wellness, travel (experiential), personal growth, technology, art & culture, ethical consumption, community engagement.

* Values: Authenticity, transparency, sustainability, social impact, quality over quantity, personal well-being, unique experiences.

* Lifestyle: Active, health-conscious, curious, early adopters of trends, socially aware, values work-life balance, enjoys discovery.

* Personality Traits: Open-minded, adventurous, discerning, analytical, community-oriented.

  • Behaviors:

* Online Habits: Heavy social media users (Instagram, TikTok, YouTube, Pinterest, LinkedIn for professional networking), consume long-form articles and podcasts, actively research before purchasing, engage with brand content.

* Purchase Behavior: Influenced by peer reviews, expert opinions, and influencer recommendations. Willing to pay a premium for ethical, sustainable, or high-quality products/services. Loyalty to brands that align with their values.

* Content Consumption: Prefers authentic, educational, inspiring, and visually appealing content. Values storytelling and personal narratives. Engages with tutorials, behind-the-scenes content, and reviews.

Secondary Audience Segment: "The Aspirational Achiever"

  • Demographics:

* Age: 30-55 years old (Gen X and older Millennials)

* Gender: Balanced.

* Location: Urban and suburban, often with families.

* Income: Upper-middle to high income, focus on quality investments.

* Education: Graduate degrees common.

  • Psychographics:

* Interests: Career development, family well-being, financial planning, luxury experiences, home improvement, status symbols, efficient solutions.

* Values: Success, family, security, efficiency, prestige, convenience, smart investments.

  • Behaviors:

* Online Habits: Uses LinkedIn, Facebook, reads industry news, consumes video content (YouTube, streaming services), uses professional tools.

* Purchase Behavior: Driven by quality, efficiency, brand reputation, and long-term value. Influenced by authority figures and expert reviews.

* Content Consumption: Seeks practical advice, expert interviews, success stories, and content that saves time or solves problems.


3. Audience Pain Points & Needs

Understanding what challenges your audience faces and what they seek to achieve is crucial for crafting messages that resonate.

  • For "The Conscious Explorer":

* Pain Points: Information overload, difficulty discerning truly sustainable/ethical products, feeling overwhelmed by choices, lack of authentic connection, fear of missing out on unique experiences.

* Needs: Trustworthy recommendations, simplified decision-making, curated experiences, community belonging, inspiration for personal growth and conscious living, products/services that align with their values without compromising quality.

  • For "The Aspirational Achiever":

* Pain Points: Time scarcity, stress from balancing career and family, financial uncertainty, keeping up with trends, finding reliable solutions for complex problems.

* Needs: Time-saving solutions, expert guidance, reliable and high-quality products/services, tools for personal and professional development, opportunities for family enrichment, clear ROI on purchases.


4. Data Sources & Insights (General Recommendations)

To build the detailed audience segments above, a multi-faceted approach to data collection is essential.

  • First-Party Data:

* Website Analytics (Google Analytics, Adobe Analytics): User demographics, interests, traffic sources, popular content, conversion paths, device usage.

* CRM Data: Purchase history, customer demographics, customer service interactions, email engagement rates.

* Social Media Insights (Facebook Insights, Instagram Insights, TikTok Analytics, YouTube Analytics): Follower demographics, peak activity times, top-performing content, engagement rates, audience interests.

* Email Marketing Data: Open rates, click-through rates, content preferences.

* Customer Surveys & Feedback: Direct insights into needs, pain points, and preferences.

  • Third-Party Data & Tools:

* Market Research Reports: Industry trends, consumer behavior studies, competitive landscape.

* Social Listening Tools (e.g., Brandwatch, Sprout Social, Mention): Monitor conversations around keywords, brands, competitors, identify emerging trends, sentiment analysis, identify potential influencers.

* Audience Intelligence Platforms (e.g., SparkToro, Audiense): Discover audience interests, demographics, top media consumed, and who they follow.

* Competitor Analysis: Analyze competitor's audience engagement, successful campaigns, and influencer partnerships.

  • Qualitative Research:

* Focus Groups: In-depth discussions to uncover motivations, attitudes, and perceptions.

* User Interviews: One-on-one conversations for deeper insights into individual experiences.


5. Key Audience Trends & Influencer Relevance

Staying abreast of current digital and consumer trends is vital for effective influencer selection and campaign messaging.

  • Authenticity & Transparency: Audiences, especially younger demographics, demand genuine connections. Influencers must be perceived as authentic, sharing their honest opinions and experiences, not just paid endorsements. This drives trust and engagement.
  • Niche Communities & Micro/Nano Influencers: Generalist influencers are less effective. Audiences gravitate towards niche communities where content is highly relevant. Micro (10K-100K followers) and Nano (1K-10K followers) influencers often boast higher engagement rates due to their closer relationship with their audience and specialization.
  • Video-First Content: Platforms like TikTok and Instagram Reels dominate content consumption. Short-form, engaging video content is preferred, but long-form video (YouTube) for educational or in-depth reviews remains strong.
  • User-Generated Content (UGC) & Co-Creation: Audiences are not just passive consumers; they want to participate. Influencer campaigns that encourage UGC or involve the audience in content creation foster stronger community and brand loyalty.
  • Social Commerce Integration: The line between content and commerce is blurring. Influencers are becoming direct sales channels through shoppable posts, live streams, and affiliate links.
  • Value-Driven Content: Beyond product promotion, audiences seek content that educates, inspires, entertains, or solves a problem. Influencers who align with audience values (e.g., sustainability, mental health, personal finance) will resonate more deeply.

6. Recommendations for Influencer Targeting

Based on the audience analysis, here are key recommendations for identifying and selecting ideal influencer profiles:

  • Prioritize Audience Overlap: The most critical factor is the percentage of the influencer's audience that matches our target segments. Tools can help analyze this.
  • Focus on Engagement Rate: A high engagement rate (likes, comments, shares, saves) indicates an active and loyal audience, which is more valuable than a large follower count with low interaction. Aim for influencers with an engagement rate above the industry average for their follower tier.
  • Niche Relevance: Select influencers whose content niche directly aligns with our product/service and the specific interests of "The Conscious Explorer" and "The Aspirational Achiever."
  • Authenticity & Brand Fit: Influencers must genuinely resonate with our brand values and messaging. Their personal brand should align with our desired brand perception.
  • Content Quality & Style: Evaluate the influencer's content quality, aesthetic, storytelling ability, and production value. Their style should complement our brand's visual and tonal identity.
  • Geographic & Demographic Alignment: Ensure the influencer's primary audience location and demographics match our target.
  • Past Campaign Performance: Review previous brand collaborations for effectiveness and brand safety.
  • Mix of Tiers: Consider a tiered approach:

* Nano/Micro-influencers: For high engagement, niche reach, and authentic testimonials.

* Mid-tier influencers (100K-500K followers): For broader reach with still strong engagement and perceived expertise.

(Optional)* Macro-influencers/Celebrities (500K+ followers): For massive reach and brand awareness, but with careful consideration of authenticity and cost.


7. Impact on Content Strategy

The audience analysis directly informs the type of content that will be most effective.

  • Tone & Voice:

* For "The Conscious Explorer": Authentic, inspiring, educational, transparent, community-focused, empowering.

* For "The Aspirational Achiever": Authoritative, informative, practical, efficient, trustworthy, aspirational.

  • Content Formats:

* Primary: Short-form video (Reels, TikTok), Instagram Stories (interactive polls, Q&A), YouTube tutorials/reviews, long-form blog posts/articles (for in-depth information), carousel posts.

* Secondary: Podcasts (interviews, discussions), infographics, live streams (Q&A, product demos).

  • Key Message Themes:

* Highlighting sustainability, ethical practices, quality, unique experiences, personal growth, and community for "The Conscious Explorer."

* Emphasizing efficiency, quality, ROI, expert solutions, family benefits, and professional advancement for "The Aspirational Achiever."

  • Call to Actions (CTAs):

* Clear, concise, and compelling. Examples: "Shop the link in bio," "Learn more on our website," "Download the guide," "Join the community," "Discover your next adventure."

* Utilize native platform features (e.g., swipe up links, product tags, affiliate links).

  • Timing & Frequency: Align content posting with audience's peak online activity times, as identified through social media insights. Consistent posting, but not overwhelming, is key.

8. Key Deliverables from this Analysis

This detailed audience analysis provides the following critical components for the subsequent steps of the Influencer Campaign Planner:

  • Detailed Audience Personas: Ready-to-use profiles for influencer matching.
  • Clear Understanding of Audience Needs & Pain Points: Essential for message development.
  • Identified Content Preferences: Guides content format and theme selection.
  • Strategic Direction for Influencer Selection: Criteria for vetting potential partners.
  • Foundation for Campaign Messaging: Ensures relevance and resonance.

9. Next Steps

The insights gathered in this audience analysis will directly inform the subsequent steps of the "Influencer Campaign Planner" workflow:

  1. Influencer Identification & Vetting: Utilize the defined audience segments and targeting recommendations to research, identify, and qualify potential influencers whose audience, values, and content style align with our brand.
  2. Campaign Strategy & Content Planning: Develop a detailed campaign strategy, including specific objectives, key performance indicators (KPIs), and a content plan that leverages the identified audience preferences and influencer strengths.
  3. Outreach & Negotiation: Craft personalized outreach templates and begin negotiations with selected influencers, leveraging the insights from this analysis to demonstrate alignment and build strong partnerships.
gemini Output

Influencer Campaign Planner: Your Blueprint for Success

Unlock Authentic Growth with Strategic Influencer Marketing

Welcome to your comprehensive guide for planning and executing a high-impact influencer marketing campaign. In today's dynamic digital landscape, authentic voices drive engagement and build trust. This planner provides you with the strategic framework, practical templates, and essential tools to forge powerful partnerships, amplify your brand message, and achieve measurable results.


1. Setting the Stage: Campaign Objectives & Target Audience

Before diving into influencer selection, it's crucial to define what success looks like for your campaign and who you aim to reach.

  • Define Clear Objectives: What do you want to achieve?

* Brand Awareness: Increase visibility, reach new audiences.

* Engagement: Drive interactions (likes, comments, shares, saves).

* Lead Generation: Capture new prospects.

* Sales/Conversions: Drive purchases, sign-ups, downloads.

* Brand Perception: Shift or reinforce brand image.

  • Identify Your Target Audience:

* Who are they? (Demographics: age, location, gender, income)

* What are their interests, pain points, and aspirations?

* Which social media platforms do they frequent most?

* How do they typically engage with content and brands?


2. Discovering Your Brand's Authentic Voices: Ideal Influencer Profiles

Finding the right influencers is paramount. Focus on quality, relevance, and authenticity over sheer follower count.

Key Criteria for Influencer Selection:

  • Niche & Relevance:

* Alignment: Does their content genuinely align with your brand's industry, products/services, and values?

* Authenticity: Do they naturally incorporate similar products or topics into their existing content?

  • Audience Demographics & Psychographics:

* Match: Does their audience closely mirror your target audience in terms of age, location, interests, and online behavior?

* Engagement Quality: Look for active, engaged followers, not just large numbers.

  • Engagement Rate (ER):

* Beyond Vanity Metrics: A high follower count with low engagement is less valuable than a smaller, highly engaged audience.

Calculation: (Total Likes + Total Comments) / Total Followers \ 100 (for a set period, e.g., last 10 posts).

* Benchmarks:

* Mega-influencers (>1M followers): 1-2% ER

* Macro-influencers (100K-1M followers): 2-5% ER

* Micro-influencers (10K-100K followers): 5-10% ER

* Nano-influencers (1K-10K followers): 10%+ ER

  • Content Quality & Aesthetic:

* Visual Appeal: High-quality photos, videos, and professional editing.

* Storytelling Ability: Can they craft compelling narratives that resonate with their audience?

* Consistency: Regular posting schedule and consistent brand aesthetic.

  • Brand Safety & Reputation:

* Past Collaborations: Have they worked with competitors? Do they over-collaborate, leading to perceived inauthenticity?

* Controversies: Avoid influencers with a history of controversial content or behavior that could negatively impact your brand.

* Authentic Following: Use tools to check for fake followers or engagement pods.

  • Influencer Tiers & Their Value:

* Nano-influencers (1K-10K followers): Highly niche, authentic, high engagement, cost-effective. Ideal for targeted campaigns and user-generated content (UGC).

* Micro-influencers (10K-100K followers): Strong community, trusted voices, good balance of reach and engagement. Excellent for product reviews and driving conversions.

* Macro-influencers (100K-1M followers): Wider reach, professional content, can generate significant buzz. Good for brand awareness and large-scale campaigns.

* Mega-influencers/Celebrities (>1M followers): Massive reach, high visibility. Best for broad brand awareness campaigns, but often come with higher costs and lower engagement rates.


3. Making Connections: Effective Influencer Outreach Templates

First impressions matter. Craft personalized, professional outreach messages that highlight mutual benefits.

General Outreach Tips:

  • Personalize Everything: Refer to specific content, posts, or qualities you admire.
  • Be Concise & Clear: Get to the point quickly.
  • Highlight Mutual Value: Explain what's in it for them (beyond just payment).
  • Professional Tone: Maintain a respectful and enthusiastic voice.
  • Clear Call to Action (CTA): What do you want them to do next?

Template 1: Initial Outreach (Email)

Subject: Collaboration Opportunity: [Your Brand Name] x [Influencer's Handle/Name]

Hi [Influencer Name],

My name is [Your Name] and I'm the [Your Role] at [Your Brand Name]. I've been a long-time admirer of your work, particularly [mention a specific post/story/reel you liked and why]. Your [e.g., authentic voice, creative storytelling, unique perspective] truly resonates with our values at [Your Brand Name].

We're currently planning an exciting [type of campaign, e.g., product launch, awareness campaign] and immediately thought of you as a perfect fit. Our [Product/Service] is all about [briefly explain what it is and its core benefit], and we believe your audience, who [mention specific audience trait, e.g., values sustainability, loves unique gadgets], would genuinely appreciate it.

We envision a collaboration where you could [briefly suggest content idea, e.g., create a review video, share your experience using our product in a series of stories]. We're keen to offer you [mention initial compensation idea, e.g., a complimentary product package, a competitive fee] and discuss how we can create engaging content together.

Are you open to exploring this opportunity further? Please let me know your availability for a brief chat next week.

Thank you for your time and consideration.

Best regards,

[Your Name]

[Your Title]

[Your Brand Name]

[Your Website/Social Media Link]

Template 2: Follow-Up Email

Subject: Following Up: Collaboration Opportunity with [Your Brand Name]

Hi [Influencer Name],

Just wanted to gently follow up on my email from [Date of previous email] regarding a potential collaboration with [Your Brand Name].

We're genuinely excited about the possibility of working with you, given your amazing content around [mention relevant topic/niche]. We believe this partnership could be a fantastic way to [reiterate a key mutual benefit, e.g., introduce your audience to innovative products, create truly authentic content].

If you're interested, please let me know. We're happy to answer any questions you might have.

Thanks again,

[Your Name]


4. Building Solid Foundations: Key Influencer Contract Terms

A clear, legally sound contract protects both your brand and the influencer, ensuring a smooth and productive partnership.

Essential Contract Clauses:

  • Scope of Work (SOW):

* Deliverables: Specific content types (e.g., 1 Instagram feed post, 3 Instagram Stories, 1 TikTok video).

* Platform(s): Where the content will be published.

* Quantity & Frequency: How many pieces of content and over what timeframe.

* Deadlines: Content submission and publishing dates.

* Key Message Points: Specific brand messages, CTAs, hashtags, and @mentions to include.

  • Compensation:

* Payment Model: Fixed fee, product only, commission, affiliate link, or a hybrid.

* Amount: Clearly state the agreed-upon fee or value.

* Payment Schedule: When and how payments will be made (e.g., 50% upfront, 50% upon completion, net 30 days).

* Expenses: Who covers additional costs (e.g., travel, specific props).

  • Content Ownership & Usage Rights:

* Who Owns the Content: Typically, the influencer owns the original content.

* Brand Usage Rights (Licensing): Grant your brand specific rights to use the content for your own marketing (e.g., repost on your social channels, use in paid ads, website, email marketing).

* Duration of Use: How long can the brand use the content (e.g., 6 months, 1 year, perpetuity)?

* Exclusivity of Content: Can the influencer re-use the exact same content for other brands?

  • Disclosure Requirements:

* Regulatory Compliance: Mandate clear and prominent disclosure of the partnership (e.g., #ad, #sponsored, #partner, "Paid Partnership with [Brand Name]").

* Platform-Specific Tools: Require use of Instagram's "Paid Partnership" tag, TikTok's content disclosure toggle.

* Adherence: Emphasize compliance with FTC (US), ASA (UK), ACCC (Australia), or local advertising standards.

  • Exclusivity Clause:

* Competitor Restriction: Prohibit the influencer from working with direct competitors during the campaign period and for a specified time thereafter (e.g., 30-90 days).

* Product Category: Define the scope of the exclusivity (e.g., "any coffee brand" vs. "any instant coffee brand").

  • Approvals Process:

* Content Review: Require the influencer to submit content drafts for your brand's review and approval before publishing.

* Revision Rounds: Specify the number of revision rounds allowed.

* Timeline: Set clear deadlines for content submission and feedback.

  • Termination Clause:

* Breach of Contract: Conditions under which either party can terminate the agreement (e.g., failure to deliver, non-compliance with disclosure).

* Consequences: What happens to payment and content usage rights upon termination.

  • Confidentiality:

* Non-Disclosure: Prevent the influencer from sharing confidential campaign details, product information, or financial terms.

  • Representations & Warranties:

* Originality: Influencer confirms content is original and doesn't infringe on third-party rights.

* Compliance: Influencer confirms they will comply with all applicable laws and platform terms.

  • Governing Law:

* Specify the jurisdiction whose laws will govern the contract.


5. Guiding Creativity: Comprehensive Content Guidelines

Empower influencers to create authentic content that resonates with their audience while effectively communicating your brand's message.

Core Content Guidelines:

  • Campaign Theme & Core Message:

* What's the Story? Clearly articulate the overarching campaign theme and the primary message you want conveyed.

* Desired Tone: Is it humorous, educational, inspirational, aspirational, informative?

  • Key Messaging Points:

Product/Service Features & Benefits: List 2-3 essential points about your offering that must* be included.

* Unique Selling Proposition (USP): What makes your brand/product stand out?

* Problem/Solution: How does your product solve a common pain point for the audience?

  • Brand Voice & Aesthetics:

* Visual Style: Provide examples of your brand's preferred aesthetic (color palette, photography style, mood boards

gemini Output

Influencer Campaign Planner: Optimized & Finalized Strategy

This document outlines a comprehensive, optimized, and finalized strategy for your influencer marketing campaign. It covers all critical aspects from ideal influencer identification to ROI tracking, ensuring a structured and effective execution.


1. Ideal Influencer Profiles

Identifying the right influencers is paramount to campaign success. Our strategy focuses on a multi-faceted approach, considering audience alignment, authenticity, and past performance.

A. Target Influencer Tiers & Characteristics:

  • Nano-Influencers (1K - 10K followers):

* Pros: High engagement rates, strong niche communities, perceived authenticity, cost-effective.

* Cons: Limited reach, more effort to manage multiple relationships.

* Ideal for: Driving authentic peer-to-peer recommendations, highly specialized niches, user-generated content (UGC) feel.

  • Micro-Influencers (10K - 100K followers):

* Pros: Excellent balance of reach and engagement, often passionate advocates, reasonable cost.

* Cons: Still requires managing multiple influencers for broader reach.

* Ideal for: Targeted campaigns, driving conversions, building brand awareness within specific demographics.

  • Macro-Influencers (100K - 1M followers):

* Pros: Significant reach, established influence, professional content creation.

* Cons: Higher cost, potentially lower engagement rate compared to smaller tiers, more managed relationship.

* Ideal for: Broad brand awareness, product launches, driving significant traffic.

  • Celebrity/Mega-Influencers (1M+ followers):

* Pros: Massive reach, instant credibility, significant media attention.

* Cons: Very high cost, potential for lower engagement, less personal connection with audience.

* Ideal for: Major brand campaigns, global reach, high-profile endorsements.

B. Key Selection Criteria:

  • Audience Demographics & Psychographics: Must align perfectly with your target customer (age, gender, location, interests, purchasing power).
  • Niche Relevance: Influencer's content and audience must be directly relevant to your product/service.
  • Engagement Rate: Look for consistently high engagement (likes, comments, shares, saves) relative to follower count (typically 3-10% for micro/nano, 1-3% for macro).
  • Content Quality & Aesthetic: Professional, high-quality visuals and compelling storytelling that aligns with your brand's image.
  • Authenticity & Brand Fit: The influencer's personal brand, values, and past collaborations should resonate naturally with your brand. Avoid those who promote too many conflicting products.
  • Follower Growth & Authenticity: Steady organic growth, minimal bot followers (use auditing tools).
  • Past Campaign Performance: If available, review their success metrics from previous sponsored content.
  • Platform: Prioritize platforms where your target audience is most active and where your content can thrive (e.g., Instagram for visuals, TikTok for short video, YouTube for long-form reviews, Blogs for detailed articles).

2. Outreach Templates

Effective outreach is personalized, clear, and highlights mutual value. Below are templates for initial contact and follow-up.

A. Initial Outreach Template (Email/DM)

Subject: Collaboration Opportunity: [Your Brand Name] x [Influencer's Name]

Hi [Influencer's Name],

My name is [Your Name] and I'm the [Your Title] at [Your Brand Name]. I've been following your work on [Platform, e.g., Instagram/YouTube] for a while now, and I'm consistently impressed by [specific compliment about their content, style, or recent post – e.g., "your authentic reviews," "your stunning photography," "the way you connect with your audience on X topic"].

We believe your audience would genuinely appreciate [Your Product/Service Category, e.g., our sustainable skincare line, our innovative productivity app, our unique travel experiences]. We're particularly drawn to [specific reason why they are a good fit, e.g., "your commitment to eco-friendly living," "your passion for tech gadgets," "your adventurous travel style"].

We're planning an exciting campaign focused on [Campaign Theme/Goal, e.g., "showcasing everyday sustainability," "boosting productivity for remote workers," "exploring hidden gems"] and we immediately thought of you as an ideal partner.

We'd love to explore a collaboration where you could [suggest content idea, e.g., "create a Reel demonstrating how you incorporate our product into your daily routine," "produce an unboxing video and review," "share your experience using our service in a blog post"].

Would you be open to a brief chat next week to discuss this opportunity further and share more details about our brand and campaign vision? Please let me know what day/time works best for you.

Looking forward to hearing from you!

Best regards,

[Your Name]

[Your Title]

[Your Brand Name]

[Your Website/Social Media Link]

B. Follow-Up Outreach Template (Email/DM - Send 3-5 days after initial contact)

Subject: Following Up: Collaboration Opportunity with [Your Brand Name]

Hi [Influencer's Name],

Hope you're having a great week!

I just wanted to follow up on my previous message regarding a potential collaboration between [Your Brand Name] and you.

We're really excited about the possibility of working together to [reiterate main campaign goal/benefit] and believe your unique voice and engaged audience would be a perfect fit.

In case you missed it, we're looking for partners to [briefly reiterate content idea/campaign theme]. We're confident this collaboration would be mutually beneficial, offering you the chance to [highlight influencer benefit, e.g., "introduce your audience to an exciting new product," "partner with a rapidly growing brand," "create engaging content around a relevant topic"].

If you're interested, please let me know your availability for a quick call next week, or feel free to ask any questions you might have via email.

Thanks again for your time and consideration!

Best,

[Your Name]

[Your Brand Name]


3. Contract Terms

A clear, comprehensive contract protects both parties and sets expectations. This section outlines key terms to include.

A. Essential Contract Clauses:

  1. Scope of Work & Deliverables:

* Specific content types (e.g., 1 Instagram Reel, 3 Instagram Stories, 1 Static Post).

* Specific messaging points, CTAs, mandatory hashtags, and tags.

* Number of revisions allowed.

* Approval process and timelines.

* Specific platforms for content distribution.

  1. Payment Terms:

* Agreed-upon fee (flat fee, commission, product-in-exchange, or hybrid).

* Payment schedule (e.g., 50% upfront, 50% upon content approval/publish; or net 30 days post-campaign).

* Method of payment.

* Reimbursement for expenses (if applicable).

  1. Content Ownership & Usage Rights:

* Who owns the intellectual property of the created content?

* Brand's rights to repost, repurpose, and use the content in future marketing (e.g., website, ads, email campaigns) – specify duration and scope.

* Influencer's rights to use content for their portfolio.

  1. Timeline & Deadlines:

* Content submission deadline for review.

* Content publish date.

* Campaign duration.

  1. Disclosure Requirements:

* Mandatory disclosure of sponsored content (e.g., #Ad, #Sponsored, "Paid Partnership" tool).

* Adherence to FTC guidelines (or local regulatory bodies).

  1. Exclusivity:

* Period during which the influencer cannot promote competing products/services.

* Specify the scope (e.g., specific product category, industry).

  1. Termination Clause:

* Conditions under which either party can terminate the agreement (e.g., breach of contract, failure to deliver).

* Consequences of termination (e.g., pro-rata payment, content removal).

  1. Indemnification:

* Each party agrees to protect the other from legal claims arising from their actions.

  1. Confidentiality:

* Agreement not to disclose sensitive campaign details.

  1. Governing Law:

* Which jurisdiction's laws will govern the contract.


4. Content Guidelines

Clear content guidelines ensure brand consistency and effective messaging while allowing influencers creative freedom.

A. Creative Brief Components:

  1. Campaign Objective: What are we trying to achieve? (e.g., increase brand awareness, drive sales, generate leads, promote a new product).
  2. Target Audience: Who are we trying to reach? (Specific demographics, interests).
  3. Key Message(s): What core message(s) should be conveyed? (e.g., "Our product simplifies your daily routine," "Experience unparalleled quality," "Join our sustainable movement").
  4. Call-to-Action (CTA): What do we want the audience to do? (e.g., "Shop now at [link in bio]," "Download the app," "Visit our website for more," "Use code [DISCOUNT CODE] for X% off").
  5. Mandatory Elements:

* Hashtags: Specific campaign hashtags, brand hashtags.

* Tags: Brand's official social media handles.

* Disclosure: Clear #Ad, #Sponsored, or platform-specific "Paid Partnership" tool.

* Product/Service Integration: How should the product/service be featured naturally?

  1. Brand Voice & Tone:

* Do's: (e.g., authentic, inspiring, informative, playful, sophisticated).

* Don'ts: (e.g., overly promotional, controversial, misleading).

  1. Visual & Aesthetic Guidance:

* Color Palette: Preferred or avoided colors.

* Imagery Style: (e.g., bright & airy, moody & sophisticated, natural & candid).

* Product Placement: How should the product be shown? In use, close-up, lifestyle shot?

  1. Prohibited Content:

* Misleading claims, negative comments about competitors, offensive language, illegal activities.

  1. Review & Approval Process:

* Timeline for submitting drafts.

* Number of review rounds.

* Contact person for approvals.

  1. Deliverable Specifics (Per Platform):

* Instagram:

* Reel: 15-30 seconds, trending audio, product in action, clear CTA.

* Static Post: High-res image/carousel, engaging caption (150-200 words), 3-5 relevant hashtags.

* Stories: 3-5 frames, swipe-up link (if applicable), poll/quiz interaction.

* TikTok: 15-60 seconds, use trending sound/challenge, authentic and entertaining, clear product integration.

* YouTube: 3-5 minute dedicated review or integrated mention in a relevant video, clear product demonstration, link in description.

* Blog Post: 500-800 words, high-quality images, natural product integration, internal/external links.


5. ROI Tracking Framework

Measuring the Return on Investment (ROI) is crucial for evaluating campaign effectiveness and informing future strategies.

A. Key Performance Indicators (KPIs) to Track:

  1. Reach & Awareness:

* Impressions: Total number of times content was displayed.

* Reach: Unique number of users who saw the content.

* Follower Growth: Increase in brand's social media followers during/after the campaign.

* Brand Mentions: Number of times your brand was mentioned organically.

* Earned Media Value (EMV): Estimated value if the content was paid advertising.

  1. Engagement:

* Likes/Reactions: Total interactions with content.

* Comments: Number of user comments.

* Shares: Content shared by users.

* Saves: Content saved by users for later viewing.

* Engagement Rate: (Likes + Comments + Shares + Saves) / Reach.

* Story Taps/Swipes: For Instagram/TikTok Stories.

  1. Website Traffic & Conversions:

* Click-Through Rate (CTR): Clicks on links (e.g., swipe-up, link in bio) / Impressions.

* Website Visits: Number of unique visitors driven from influencer content (trackable via UTM parameters).

* Sales/Conversions: Number of purchases or desired actions (e.g., sign-ups, downloads) directly attributed to influencer content (using unique discount codes, affiliate links, or post-purchase surveys).

* Average Order Value (AOV): For sales-driven campaigns.

* Cost Per Acquisition (CPA): Total campaign cost / Number of conversions.

  1. Brand Sentiment & Perceptions:

* Comment Analysis: Qualitative review of comments for overall sentiment (positive, neutral, negative).

* Survey Data: Pre/post-campaign surveys on brand perception.

B. Tracking Tools & Methodologies:

  1. UTM Parameters:

* Append unique UTM tags to all links provided to influencers (e.g., ?utm_source=instagram&utm_medium=influencer&utm_campaign=campaignname&utm_content=influencer_name).

* Track these parameters in Google Analytics (or your preferred analytics platform) to see traffic, bounce rate, time on site, and conversions directly from each influencer.

  1. Unique Discount Codes/Affiliate Links:

* Provide each influencer with a unique discount code or affiliate link. This allows direct attribution of sales.

* Track redemptions/conversions through your e-commerce platform.

  1. Influencer Platform Analytics:

* Request screenshots or access to influencer's backend analytics (Impressions, Reach, Engagement, Story metrics).

* Many platforms offer "Branded Content" tools that provide shared analytics.

  1. Social Listening Tools:

* Utilize tools like Brandwatch, Sprout Social, or Mention to track brand mentions, sentiment, and hashtag performance across platforms.

  1. CRM/Sales Data Integration:

* Integrate influencer campaign data with your CRM to understand the long-term customer value driven by influencer channels.

  1. Reporting Frequency:

* Weekly/Bi-weekly: For campaign monitoring and optimization.

* Post-Campaign (1-2 weeks after final content): Comprehensive report detailing all KPIs, total ROI, and key learnings.

C. Calculating ROI:

ROI = (Net Profit from Influencer Campaign - Cost of Influencer Campaign) / Cost of Influencer Campaign * 100

  • Net Profit: Revenue generated directly from the campaign (attributable sales) minus the cost of goods sold.
  • Cost of Campaign: Influencer fees, product costs, agency fees, internal management time, ad spend for boosting content.

Example:

If a campaign costs \$10,000 and generates \$30,000 in direct sales (with a 50% profit margin on those sales, so \$15,000 net profit):

ROI = (\$1

influencer_campaign_planner.md
Download as Markdown
Copy all content
Full output as text
Download ZIP
IDE-ready project ZIP
Copy share link
Permanent URL for this run
Get Embed Code
Embed this result on any website
Print / Save PDF
Use browser print dialog
\n\n\n"); var hasSrcMain=Object.keys(extracted).some(function(k){return k.indexOf("src/main")>=0;}); if(!hasSrcMain) zip.file(folder+"src/main."+ext,"import React from 'react'\nimport ReactDOM from 'react-dom/client'\nimport App from './App'\nimport './index.css'\n\nReactDOM.createRoot(document.getElementById('root')!).render(\n \n \n \n)\n"); var hasSrcApp=Object.keys(extracted).some(function(k){return k==="src/App."+ext||k==="App."+ext;}); if(!hasSrcApp) zip.file(folder+"src/App."+ext,"import React from 'react'\nimport './App.css'\n\nfunction App(){\n return(\n
\n
\n

"+slugTitle(pn)+"

\n

Built with PantheraHive BOS

\n
\n
\n )\n}\nexport default App\n"); zip.file(folder+"src/index.css","*{margin:0;padding:0;box-sizing:border-box}\nbody{font-family:system-ui,-apple-system,sans-serif;background:#f0f2f5;color:#1a1a2e}\n.app{min-height:100vh;display:flex;flex-direction:column}\n.app-header{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px}\nh1{font-size:2.5rem;font-weight:700}\n"); zip.file(folder+"src/App.css",""); zip.file(folder+"src/components/.gitkeep",""); zip.file(folder+"src/pages/.gitkeep",""); zip.file(folder+"src/hooks/.gitkeep",""); Object.keys(extracted).forEach(function(p){ var fp=p.startsWith("src/")?p:"src/"+p; zip.file(folder+fp,extracted[p]); }); zip.file(folder+"README.md","# "+slugTitle(pn)+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\nnpm install\nnpm run dev\n\`\`\`\n\n## Build\n\`\`\`bash\nnpm run build\n\`\`\`\n\n## Open in IDE\nOpen the project folder in VS Code or WebStorm.\n"); zip.file(folder+".gitignore","node_modules/\ndist/\n.env\n.DS_Store\n*.local\n"); } /* --- Vue (Vite + Composition API + TypeScript) --- */ function buildVue(zip,folder,app,code,panelTxt){ var pn=pkgName(app); var C=cc(pn); var extracted=extractCode(panelTxt); zip.file(folder+"package.json",'{\n "name": "'+pn+'",\n "version": "0.0.0",\n "type": "module",\n "scripts": {\n "dev": "vite",\n "build": "vue-tsc -b && vite build",\n "preview": "vite preview"\n },\n "dependencies": {\n "vue": "^3.5.13",\n "vue-router": "^4.4.5",\n "pinia": "^2.3.0",\n "axios": "^1.7.9"\n },\n "devDependencies": {\n "@vitejs/plugin-vue": "^5.2.1",\n "typescript": "~5.7.3",\n "vite": "^6.0.5",\n "vue-tsc": "^2.2.0"\n }\n}\n'); zip.file(folder+"vite.config.ts","import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\nimport { resolve } from 'path'\n\nexport default defineConfig({\n plugins: [vue()],\n resolve: { alias: { '@': resolve(__dirname,'src') } }\n})\n"); zip.file(folder+"tsconfig.json",'{"files":[],"references":[{"path":"./tsconfig.app.json"},{"path":"./tsconfig.node.json"}]}\n'); zip.file(folder+"tsconfig.app.json",'{\n "compilerOptions":{\n "target":"ES2020","useDefineForClassFields":true,"module":"ESNext","lib":["ES2020","DOM","DOM.Iterable"],\n "skipLibCheck":true,"moduleResolution":"bundler","allowImportingTsExtensions":true,\n "isolatedModules":true,"moduleDetection":"force","noEmit":true,"jsxImportSource":"vue",\n "strict":true,"paths":{"@/*":["./src/*"]}\n },\n "include":["src/**/*.ts","src/**/*.d.ts","src/**/*.tsx","src/**/*.vue"]\n}\n'); zip.file(folder+"env.d.ts","/// \n"); zip.file(folder+"index.html","\n\n\n \n \n "+slugTitle(pn)+"\n\n\n
\n \n\n\n"); var hasMain=Object.keys(extracted).some(function(k){return k==="src/main.ts"||k==="main.ts";}); if(!hasMain) zip.file(folder+"src/main.ts","import { createApp } from 'vue'\nimport { createPinia } from 'pinia'\nimport App from './App.vue'\nimport './assets/main.css'\n\nconst app = createApp(App)\napp.use(createPinia())\napp.mount('#app')\n"); var hasApp=Object.keys(extracted).some(function(k){return k.indexOf("App.vue")>=0;}); if(!hasApp) zip.file(folder+"src/App.vue","\n\n\n\n\n"); zip.file(folder+"src/assets/main.css","*{margin:0;padding:0;box-sizing:border-box}body{font-family:system-ui,sans-serif;background:#fff;color:#213547}\n"); zip.file(folder+"src/components/.gitkeep",""); zip.file(folder+"src/views/.gitkeep",""); zip.file(folder+"src/stores/.gitkeep",""); Object.keys(extracted).forEach(function(p){ var fp=p.startsWith("src/")?p:"src/"+p; zip.file(folder+fp,extracted[p]); }); zip.file(folder+"README.md","# "+slugTitle(pn)+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\nnpm install\nnpm run dev\n\`\`\`\n\n## Build\n\`\`\`bash\nnpm run build\n\`\`\`\n\nOpen in VS Code or WebStorm.\n"); zip.file(folder+".gitignore","node_modules/\ndist/\n.env\n.DS_Store\n*.local\n"); } /* --- Angular (v19 standalone) --- */ function buildAngular(zip,folder,app,code,panelTxt){ var pn=pkgName(app); var C=cc(pn); var sel=pn.replace(/_/g,"-"); var extracted=extractCode(panelTxt); zip.file(folder+"package.json",'{\n "name": "'+pn+'",\n "version": "0.0.0",\n "scripts": {\n "ng": "ng",\n "start": "ng serve",\n "build": "ng build",\n "test": "ng test"\n },\n "dependencies": {\n "@angular/animations": "^19.0.0",\n "@angular/common": "^19.0.0",\n "@angular/compiler": "^19.0.0",\n "@angular/core": "^19.0.0",\n "@angular/forms": "^19.0.0",\n "@angular/platform-browser": "^19.0.0",\n "@angular/platform-browser-dynamic": "^19.0.0",\n "@angular/router": "^19.0.0",\n "rxjs": "~7.8.0",\n "tslib": "^2.3.0",\n "zone.js": "~0.15.0"\n },\n "devDependencies": {\n "@angular-devkit/build-angular": "^19.0.0",\n "@angular/cli": "^19.0.0",\n "@angular/compiler-cli": "^19.0.0",\n "typescript": "~5.6.0"\n }\n}\n'); zip.file(folder+"angular.json",'{\n "$schema": "./node_modules/@angular/cli/lib/config/schema.json",\n "version": 1,\n "newProjectRoot": "projects",\n "projects": {\n "'+pn+'": {\n "projectType": "application",\n "root": "",\n "sourceRoot": "src",\n "prefix": "app",\n "architect": {\n "build": {\n "builder": "@angular-devkit/build-angular:application",\n "options": {\n "outputPath": "dist/'+pn+'",\n "index": "src/index.html",\n "browser": "src/main.ts",\n "tsConfig": "tsconfig.app.json",\n "styles": ["src/styles.css"],\n "scripts": []\n }\n },\n "serve": {"builder":"@angular-devkit/build-angular:dev-server","configurations":{"production":{"buildTarget":"'+pn+':build:production"},"development":{"buildTarget":"'+pn+':build:development"}},"defaultConfiguration":"development"}\n }\n }\n }\n}\n'); zip.file(folder+"tsconfig.json",'{\n "compileOnSave": false,\n "compilerOptions": {"baseUrl":"./","outDir":"./dist/out-tsc","forceConsistentCasingInFileNames":true,"strict":true,"noImplicitOverride":true,"noPropertyAccessFromIndexSignature":true,"noImplicitReturns":true,"noFallthroughCasesInSwitch":true,"paths":{"@/*":["src/*"]},"skipLibCheck":true,"esModuleInterop":true,"sourceMap":true,"declaration":false,"experimentalDecorators":true,"moduleResolution":"bundler","importHelpers":true,"target":"ES2022","module":"ES2022","useDefineForClassFields":false,"lib":["ES2022","dom"]},\n "references":[{"path":"./tsconfig.app.json"}]\n}\n'); zip.file(folder+"tsconfig.app.json",'{\n "extends":"./tsconfig.json",\n "compilerOptions":{"outDir":"./dist/out-tsc","types":[]},\n "files":["src/main.ts"],\n "include":["src/**/*.d.ts"]\n}\n'); zip.file(folder+"src/index.html","\n\n\n \n "+slugTitle(pn)+"\n \n \n \n\n\n \n\n\n"); zip.file(folder+"src/main.ts","import { bootstrapApplication } from '@angular/platform-browser';\nimport { appConfig } from './app/app.config';\nimport { AppComponent } from './app/app.component';\n\nbootstrapApplication(AppComponent, appConfig)\n .catch(err => console.error(err));\n"); zip.file(folder+"src/styles.css","* { margin: 0; padding: 0; box-sizing: border-box; }\nbody { font-family: system-ui, -apple-system, sans-serif; background: #f9fafb; color: #111827; }\n"); var hasComp=Object.keys(extracted).some(function(k){return k.indexOf("app.component")>=0;}); if(!hasComp){ zip.file(folder+"src/app/app.component.ts","import { Component } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\n\n@Component({\n selector: 'app-root',\n standalone: true,\n imports: [RouterOutlet],\n templateUrl: './app.component.html',\n styleUrl: './app.component.css'\n})\nexport class AppComponent {\n title = '"+pn+"';\n}\n"); zip.file(folder+"src/app/app.component.html","
\n
\n

"+slugTitle(pn)+"

\n

Built with PantheraHive BOS

\n
\n \n
\n"); zip.file(folder+"src/app/app.component.css",".app-header{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px}h1{font-size:2.5rem;font-weight:700;color:#6366f1}\n"); } zip.file(folder+"src/app/app.config.ts","import { ApplicationConfig, provideZoneChangeDetection } from '@angular/core';\nimport { provideRouter } from '@angular/router';\nimport { routes } from './app.routes';\n\nexport const appConfig: ApplicationConfig = {\n providers: [\n provideZoneChangeDetection({ eventCoalescing: true }),\n provideRouter(routes)\n ]\n};\n"); zip.file(folder+"src/app/app.routes.ts","import { Routes } from '@angular/router';\n\nexport const routes: Routes = [];\n"); Object.keys(extracted).forEach(function(p){ var fp=p.startsWith("src/")?p:"src/"+p; zip.file(folder+fp,extracted[p]); }); zip.file(folder+"README.md","# "+slugTitle(pn)+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\nnpm install\nng serve\n# or: npm start\n\`\`\`\n\n## Build\n\`\`\`bash\nng build\n\`\`\`\n\nOpen in VS Code with Angular Language Service extension.\n"); zip.file(folder+".gitignore","node_modules/\ndist/\n.env\n.DS_Store\n*.local\n.angular/\n"); } /* --- Python --- */ function buildPython(zip,folder,app,code){ var title=slugTitle(app); var pn=pkgName(app); var src=code.replace(/^\`\`\`[\w]*\n?/m,"").replace(/\n?\`\`\`$/m,"").trim(); var reqMap={"numpy":"numpy","pandas":"pandas","sklearn":"scikit-learn","tensorflow":"tensorflow","torch":"torch","flask":"flask","fastapi":"fastapi","uvicorn":"uvicorn","requests":"requests","sqlalchemy":"sqlalchemy","pydantic":"pydantic","dotenv":"python-dotenv","PIL":"Pillow","cv2":"opencv-python","matplotlib":"matplotlib","seaborn":"seaborn","scipy":"scipy"}; var reqs=[]; Object.keys(reqMap).forEach(function(k){if(src.indexOf("import "+k)>=0||src.indexOf("from "+k)>=0)reqs.push(reqMap[k]);}); var reqsTxt=reqs.length?reqs.join("\n"):"# add dependencies here\n"; zip.file(folder+"main.py",src||"# "+title+"\n# Generated by PantheraHive BOS\n\nprint(title+\" loaded\")\n"); zip.file(folder+"requirements.txt",reqsTxt); zip.file(folder+".env.example","# Environment variables\n"); zip.file(folder+"README.md","# "+title+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\npython3 -m venv .venv\nsource .venv/bin/activate\npip install -r requirements.txt\n\`\`\`\n\n## Run\n\`\`\`bash\npython main.py\n\`\`\`\n"); zip.file(folder+".gitignore",".venv/\n__pycache__/\n*.pyc\n.env\n.DS_Store\n"); } /* --- Node.js --- */ function buildNode(zip,folder,app,code){ var title=slugTitle(app); var pn=pkgName(app); var src=code.replace(/^\`\`\`[\w]*\n?/m,"").replace(/\n?\`\`\`$/m,"").trim(); var depMap={"mongoose":"^8.0.0","dotenv":"^16.4.5","axios":"^1.7.9","cors":"^2.8.5","bcryptjs":"^2.4.3","jsonwebtoken":"^9.0.2","socket.io":"^4.7.4","uuid":"^9.0.1","zod":"^3.22.4","express":"^4.18.2"}; var deps={}; Object.keys(depMap).forEach(function(k){if(src.indexOf(k)>=0)deps[k]=depMap[k];}); if(!deps["express"])deps["express"]="^4.18.2"; var pkgJson=JSON.stringify({"name":pn,"version":"1.0.0","main":"src/index.js","scripts":{"start":"node src/index.js","dev":"nodemon src/index.js"},"dependencies":deps,"devDependencies":{"nodemon":"^3.0.3"}},null,2)+"\n"; zip.file(folder+"package.json",pkgJson); var fallback="const express=require(\"express\");\nconst app=express();\napp.use(express.json());\n\napp.get(\"/\",(req,res)=>{\n res.json({message:\""+title+" API\"});\n});\n\nconst PORT=process.env.PORT||3000;\napp.listen(PORT,()=>console.log(\"Server on port \"+PORT));\n"; zip.file(folder+"src/index.js",src||fallback); zip.file(folder+".env.example","PORT=3000\n"); zip.file(folder+".gitignore","node_modules/\n.env\n.DS_Store\n"); zip.file(folder+"README.md","# "+title+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\nnpm install\n\`\`\`\n\n## Run\n\`\`\`bash\nnpm run dev\n\`\`\`\n"); } /* --- Vanilla HTML --- */ function buildVanillaHtml(zip,folder,app,code){ var title=slugTitle(app); var isFullDoc=code.trim().toLowerCase().indexOf("=0||code.trim().toLowerCase().indexOf("=0; var indexHtml=isFullDoc?code:"\n\n\n\n\n"+title+"\n\n\n\n"+code+"\n\n\n\n"; zip.file(folder+"index.html",indexHtml); zip.file(folder+"style.css","/* "+title+" — styles */\n*{margin:0;padding:0;box-sizing:border-box}\nbody{font-family:system-ui,-apple-system,sans-serif;background:#fff;color:#1a1a2e}\n"); zip.file(folder+"script.js","/* "+title+" — scripts */\n"); zip.file(folder+"assets/.gitkeep",""); zip.file(folder+"README.md","# "+title+"\n\nGenerated by PantheraHive BOS.\n\n## Open\nDouble-click \`index.html\` in your browser.\n\nOr serve locally:\n\`\`\`bash\nnpx serve .\n# or\npython3 -m http.server 3000\n\`\`\`\n"); zip.file(folder+".gitignore",".DS_Store\nnode_modules/\n.env\n"); } /* ===== MAIN ===== */ var sc=document.createElement("script"); sc.src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.10.1/jszip.min.js"; sc.onerror=function(){ if(lbl)lbl.textContent="Download ZIP"; alert("JSZip load failed — check connection."); }; sc.onload=function(){ var zip=new JSZip(); var base=(_phFname||"output").replace(/\.[^.]+$/,""); var app=base.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")||"my_app"; var folder=app+"/"; var vc=document.getElementById("panel-content"); var panelTxt=vc?(vc.innerText||vc.textContent||""):""; var lang=detectLang(_phCode,panelTxt); if(_phIsHtml){ buildVanillaHtml(zip,folder,app,_phCode); } else if(lang==="flutter"){ buildFlutter(zip,folder,app,_phCode,panelTxt); } else if(lang==="react-native"){ buildReactNative(zip,folder,app,_phCode,panelTxt); } else if(lang==="swift"){ buildSwift(zip,folder,app,_phCode,panelTxt); } else if(lang==="kotlin"){ buildKotlin(zip,folder,app,_phCode,panelTxt); } else if(lang==="react"){ buildReact(zip,folder,app,_phCode,panelTxt); } else if(lang==="vue"){ buildVue(zip,folder,app,_phCode,panelTxt); } else if(lang==="angular"){ buildAngular(zip,folder,app,_phCode,panelTxt); } else if(lang==="python"){ buildPython(zip,folder,app,_phCode); } else if(lang==="node"){ buildNode(zip,folder,app,_phCode); } else { /* Document/content workflow */ var title=app.replace(/_/g," "); var md=_phAll||_phCode||panelTxt||"No content"; zip.file(folder+app+".md",md); var h=""+title+""; h+="

"+title+"

"; var hc=md.replace(/&/g,"&").replace(//g,">"); hc=hc.replace(/^### (.+)$/gm,"

$1

"); hc=hc.replace(/^## (.+)$/gm,"

$1

"); hc=hc.replace(/^# (.+)$/gm,"

$1

"); hc=hc.replace(/\*\*(.+?)\*\*/g,"$1"); hc=hc.replace(/\n{2,}/g,"

"); h+="

"+hc+"

Generated by PantheraHive BOS
"; zip.file(folder+app+".html",h); zip.file(folder+"README.md","# "+title+"\n\nGenerated by PantheraHive BOS.\n\nFiles:\n- "+app+".md (Markdown)\n- "+app+".html (styled HTML)\n"); } zip.generateAsync({type:"blob"}).then(function(blob){ var a=document.createElement("a"); a.href=URL.createObjectURL(blob); a.download=app+".zip"; a.click(); URL.revokeObjectURL(a.href); if(lbl)lbl.textContent="Download ZIP"; }); }; document.head.appendChild(sc); } function phShare(){navigator.clipboard.writeText(window.location.href).then(function(){var el=document.getElementById("ph-share-lbl");if(el){el.textContent="Link copied!";setTimeout(function(){el.textContent="Copy share link";},2500);}});}function phEmbed(){var runId=window.location.pathname.split("/").pop().replace(".html","");var embedUrl="https://pantherahive.com/embed/"+runId;var code='';navigator.clipboard.writeText(code).then(function(){var el=document.getElementById("ph-embed-lbl");if(el){el.textContent="Embed code copied!";setTimeout(function(){el.textContent="Get Embed Code";},2500);}});}