# Marketing, Ventas & Social Media - Automatización Completa

## Introducción y Fundamentos

### Marketing Automation con IA
- **Definición**: Automatización de procesos de marketing usando inteligencia artificial para personalización y optimización
- **Objetivo**: Generar leads, nutrir prospectos, convertir clientes y fidelizar audiencias de manera automática
- **Ventaja competitiva**: Escalabilidad sin aumentar headcount, personalización masiva

### Arquitectura de Marketing Automation
```
Lead Generation → Lead Qualification → Nurturing → Conversion → Retention
       ↓               ↓                ↓            ↓          ↓
   Web Scraping    IA Classifier    Email Sequence  Chatbots   Analytics
```

## Lead Generation Automatizado

### Lead Magnets Inteligentes

#### Arquitectura del Lead Magnet (4 Módulos):
```
1. Formulario Web → 2. Web Scraping → 3. Análisis IA → 4. Email Personalizado
```

#### Configuración Técnica:

**Formulario n8n**:
```json
{
  "form_title": "Optimizador de Landing Pages",
  "subtitle": "Tu página está perdiendo ventas. Arréglala ahora.",
  "fields": [
    {
      "name": "website_url",
      "type": "url",
      "label": "URL de tu página web",
      "required": true,
      "placeholder": "https://tu-pagina.com"
    },
    {
      "name": "email",
      "type": "email", 
      "label": "Tu email para recibir el análisis",
      "required": true
    }
  ],
  "webhook_url": "https://your-n8n.com/webhook/lead-magnet"
}
```

**HTTP Scraping**:
```json
{
  "method": "GET",
  "url": "{{$json.website_url}}",
  "headers": {
    "User-Agent": "Mozilla/5.0 (compatible; WebAnalyzer/1.0)",
    "Accept": "text/html,application/xhtml+xml"
  },
  "timeout": 30000
}
```

**Análisis IA (OpenAI)**:
```json
{
  "model": "gpt-4", // Alternativa: gpt-4o-mini (6x más barato)
  "messages": [
    {
      "role": "system",
      "content": "Eres un experto en optimización de conversiones y UX. Analiza esta página web y proporciona una evaluación detallada con recomendaciones específicas y accionables."
    },
    {
      "role": "user",
      "content": "Analiza esta página web y dame:\n\n1. Primeras impresiones (tono constructivo pero directo)\n2. 5-10 problemas específicos detectados\n3. 10 recomendaciones de mejora priorizadas\n4. CTA final para solicitar ayuda profesional\n\nHTML de la página:\n{{$json.scraped_content}}"
    }
  ],
  "max_tokens": 2000,
  "temperature": 0.7
}
```

**Email Personalizado**:
```html
<!DOCTYPE html>
<html>
<head>
    <title>Análisis de tu página web - {{$json.website_url}}</title>
</head>
<body>
    <h1>🔍 Evaluación de tu página web + Recomendaciones personalizadas</h1>
    
    <div style="background: #f8f9fa; padding: 20px; border-radius: 8px;">
        {{$json.ai_analysis}}
    </div>
    
    <div style="margin-top: 30px; padding: 20px; border: 2px solid #007bff; border-radius: 8px;">
        <h3>¿Necesitas ayuda implementando estas mejoras?</h3>
        <p>Si quieres que nuestro equipo implemente todas estas optimizaciones por ti:</p>
        <a href="https://tu-pagina.com/contacto" style="background: #007bff; color: white; padding: 15px 30px; text-decoration: none; border-radius: 5px;">Solicitar Consulta Gratuita</a>
    </div>
    
    <p style="margin-top: 20px; font-size: 12px; color: #666;">
        Este análisis fue generado automáticamente para {{$json.website_url}}
    </p>
</body>
</html>
```

### Comparativa de Costos IA:

#### GPT-4 vs GPT-4o-mini:
```
Ejemplo con análisis web complejo:

GPT-4:
- Input tokens: ~8,000 tokens (HTML completo) = $0.25
- Output tokens: ~2,000 tokens (análisis) = $0.26
- Total: $0.51 por análisis

GPT-4o-mini:
- Input tokens: ~8,000 tokens = $0.05  
- Output tokens: ~2,000 tokens = $0.01
- Total: $0.06 por análisis

Ratio: GPT-4o-mini es 8.5x más barato
```

### LinkedIn Lead Generation

#### Automatización Completa:
```
LinkedIn Search → Profile Scraping → Email Finding → 
Personalized Outreach → Follow-up Sequences
```

#### Profile Scraping:
```javascript
// Code node para scraping de LinkedIn
const profileData = {
  name: $('.text-heading-xlarge').text().trim(),
  headline: $('.text-body-medium').first().text().trim(),
  location: $('.text-body-small .t-black--light').text().trim(),
  company: $('.inline-show-more-text--is-anchor').first().text().trim(),
  experience: [],
  education: [],
  skills: []
};

// Extraer experiencia
$('[data-field="experience"]').each((i, exp) => {
  profileData.experience.push({
    title: $(exp).find('[data-field="experience-position-title"]').text().trim(),
    company: $(exp).find('[data-field="experience-company-name"]').text().trim(),
    duration: $(exp).find('.pvs-entity__caption-wrapper').text().trim()
  });
});

return [{json: profileData}];
```

#### Personalización con IA:
```json
{
  "model": "gpt-4o-mini",
  "messages": [
    {
      "role": "system",
      "content": "Eres un experto en LinkedIn outreach B2B. Crea mensajes personalizados que generen respuestas positivas."
    },
    {
      "role": "user", 
      "content": "Crea un mensaje de LinkedIn para:\nNombre: {{$json.name}}\nPosición: {{$json.headline}}\nEmpresa: {{$json.company}}\n\nPropuesta: Automatización con IA para empresas\nTono: Profesional pero cercano\nLongitud: Máximo 150 palabras\nObjetivo: Solicitar reunión de 15 minutos"
    }
  ]
}
```

### Social Media Automation

#### Generación de Contenido Automatizada:

**Workflow Diario de Contenido**:
```
Trigger (9:00 AM) → Research Topics → Generate Content → 
Create Image → Post LinkedIn → Post Instagram → Schedule Facebook
```

**Research de Topics**:
```javascript
// Code node para trending topics
const getTrendingTopics = async () => {
  const topics = await fetch('https://api.trendingtopics.com/v1/tech', {
    headers: {'Authorization': 'Bearer API_KEY'}
  });
  
  const aiTopics = topics.filter(topic => 
    topic.keywords.includes('ai') || 
    topic.keywords.includes('automation') ||
    topic.keywords.includes('marketing')
  );
  
  return aiTopics.slice(0, 3).map(topic => ({json: topic}));
};
```

**Generación de Posts**:
```json
{
  "model": "gpt-4o-mini",
  "messages": [
    {
      "role": "system",
      "content": "Eres un experto en marketing digital y automatización. Crea contenido viral para LinkedIn que eduque y genere engagement."
    },
    {
      "role": "user",
      "content": "Crea un post de LinkedIn sobre: {{$json.trending_topic}}\n\nRequisitos:\n- Tono: Profesional pero accesible\n- Longitud: 150-200 palabras\n- Incluir: Hook fuerte, valor educativo, CTA\n- Hashtags: #Automatization #AI #Marketing\n- Formato: Con emojis y saltos de línea para legibilidad"
    }
  ]
}
```

**Generación de Imágenes**:
```json
{
  "model": "dall-e-3",
  "prompt": "Professional LinkedIn post image about {{$json.topic}}, modern flat design, blue and white color scheme, technology and automation theme, clean layout with icons, 1080x1080 aspect ratio, business professional style",
  "size": "1024x1024",
  "quality": "hd",
  "style": "vivid"
}
```

#### Multi-Platform Publishing:

**LinkedIn API**:
```json
{
  "method": "POST",
  "url": "https://api.linkedin.com/v2/ugcPosts",
  "headers": {
    "Authorization": "Bearer {{linkedin_access_token}}",
    "Content-Type": "application/json"
  },
  "body": {
    "author": "urn:li:person:{{person_id}}",
    "lifecycleState": "PUBLISHED",
    "specificContent": {
      "com.linkedin.ugc.ShareContent": {
        "shareCommentary": {
          "text": "{{$json.generated_content}}"
        },
        "shareMediaCategory": "IMAGE",
        "media": [
          {
            "status": "READY",
            "media": "{{$json.uploaded_image_urn}}"
          }
        ]
      }
    }
  }
}
```

**Instagram API (Meta Graph)**:
```json
{
  "method": "POST",
  "url": "https://graph.facebook.com/v18.0/{{instagram_account_id}}/media",
  "body": {
    "image_url": "{{$json.generated_image_url}}",
    "caption": "{{$json.instagram_caption}}",
    "access_token": "{{instagram_access_token}}"
  }
}
```

## Automatización de Ventas

### CRM Integration & Lead Scoring

#### Lead Scoring con IA:
```json
{
  "model": "gpt-4o-mini",
  "messages": [
    {
      "role": "system", 
      "content": "Eres un experto en calificación de leads B2B. Evalúa leads del 1-100 basado en probabilidad de compra."
    },
    {
      "role": "user",
      "content": "Califica este lead:\nEmpresa: {{$json.company}}\nPosición: {{$json.job_title}}\nTamaño empresa: {{$json.company_size}}\nIndustria: {{$json.industry}}\nInteracciones previas: {{$json.previous_engagement}}\n\nDevuelve solo el score (1-100) y una breve justificación."
    }
  ]
}
```

#### HubSpot/Salesforce Integration:
```json
{
  "method": "POST",
  "url": "https://api.hubapi.com/crm/v3/objects/contacts",
  "headers": {
    "Authorization": "Bearer {{hubspot_token}}",
    "Content-Type": "application/json"
  },
  "body": {
    "properties": {
      "email": "{{$json.email}}",
      "firstname": "{{$json.first_name}}",
      "lastname": "{{$json.last_name}}",
      "company": "{{$json.company}}",
      "hs_lead_status": "NEW",
      "lead_score": "{{$json.ai_score}}",
      "lead_source": "LinkedIn Automation"
    }
  }
}
```

### Email Marketing Automation

#### Secuencias de Nurturing:

**Welcome Series (5 emails)**:
```json
Email 1 (Inmediato): {
  "subject": "Bienvenido - Tu análisis de {{$json.website_url}} está listo",
  "delay": "0 minutes",
  "type": "delivery_confirmation"
}

Email 2 (Día +2): {
  "subject": "3 errores que están costándote ventas ahora mismo",
  "delay": "2 days", 
  "type": "educational_content"
}

Email 3 (Día +5): {
  "subject": "Caso de éxito: Cómo aumentamos conversiones 127%",
  "delay": "5 days",
  "type": "social_proof"
}

Email 4 (Día +7): {
  "subject": "¿Quieres implementar estas mejoras? (Oferta limitada)",
  "delay": "7 days",
  "type": "soft_pitch"
}

Email 5 (Día +10): {
  "subject": "Última oportunidad - Consulta gratuita",
  "delay": "10 days", 
  "type": "urgency_close"
}
```

#### Personalización Avanzada:
```javascript
// Code node para personalización dinámica
const personalizeEmail = (leadData, templateType) => {
  const personalizations = {
    industry_specific: {
      'ecommerce': 'tienda online',
      'saas': 'plataforma SaaS', 
      'consulting': 'consultora',
      'agency': 'agencia'
    },
    pain_points: {
      'low_conversion': 'conversiones bajas',
      'high_bounce': 'abandono alto',
      'poor_ux': 'experiencia confusa'
    }
  };
  
  const industryTerm = personalizations.industry_specific[leadData.industry] || 'negocio';
  const painPoint = personalizations.pain_points[leadData.main_issue] || 'problemas de conversión';
  
  return {
    industry_term: industryTerm,
    pain_point: painPoint,
    personalized_subject: `${leadData.first_name}, tu ${industryTerm} puede mejorar esto`,
    custom_opening: `Hola ${leadData.first_name}, he visto que tu ${industryTerm} tiene ${painPoint}...`
  };
};
```

### Sales Process Automation

#### Booking & Calendar Integration:

**Cal.com Integration**:
```json
{
  "method": "POST",
  "url": "https://api.cal.com/v1/bookings",
  "headers": {
    "Authorization": "Bearer {{cal_api_key}}"
  },
  "body": {
    "eventTypeId": "{{meeting_type_id}}",
    "start": "{{$json.selected_datetime}}",
    "end": "{{$json.selected_datetime_end}}",
    "attendee": {
      "email": "{{$json.lead_email}}",
      "name": "{{$json.lead_name}}",
      "timeZone": "{{$json.timezone}}"
    },
    "metadata": {
      "lead_source": "automated_funnel",
      "lead_score": "{{$json.ai_score}}",
      "company": "{{$json.company}}"
    }
  }
}
```

#### Pre-Meeting Preparation:
```json
{
  "model": "gpt-4",
  "messages": [
    {
      "role": "system",
      "content": "Eres un research specialist B2B. Prepara un brief completo para una reunión de ventas."
    },
    {
      "role": "user",
      "content": "Crea un brief de reunión para:\nProspecto: {{$json.lead_name}}\nEmpresa: {{$json.company}}\nWeb: {{$json.website}}\nIndustria: {{$json.industry}}\nProblem principal: {{$json.main_pain_point}}\n\nIncluye:\n1. Research de la empresa\n2. Preguntas clave a hacer\n3. Objeciones probables\n4. Propuesta de valor personalizada"
    }
  ]
}
```

### Chatbots de Venta Avanzados

#### Architecture de Conversational Sales:

**Intent Classification**:
```json
{
  "model": "gpt-4o-mini",
  "messages": [
    {
      "role": "system",
      "content": "Clasifica la intención del usuario en: PRICING, DEMO_REQUEST, FEATURE_QUESTION, SUPPORT, OBJECTION, QUALIFICATION. Responde solo con la categoría."
    },
    {
      "role": "user",
      "content": "{{$json.user_message}}"
    }
  ],
  "max_tokens": 10
}
```

**Dynamic Response Generation**:
```json
{
  "model": "gpt-4",
  "messages": [
    {
      "role": "system",
      "content": "Eres un sales rep experto en automatización con IA. Tu objetivo es calificar leads y agendar demos. Tono: profesional pero cercano.\n\nProducto: Automatización de marketing con IA\nPrecio: €1,500-5,000/mes según tamaño\nBeneficios clave: 50% menos tiempo en tareas repetitivas, 200% más leads calificados"
    },
    {
      "role": "user",
      "content": "Contexto: {{$json.conversation_context}}\nÚltimo mensaje: {{$json.user_message}}\nIntención detectada: {{$json.intent}}\n\nGenera una respuesta que avance hacia el objetivo de venta."
    }
  ]
}
```

**Lead Qualification Automation**:
```javascript
// Code node para calificación BANT
const qualifyLead = (conversationData) => {
  const qualification = {
    budget: extractBudget(conversationData.messages),
    authority: extractAuthority(conversationData.user_info),
    need: extractNeed(conversationData.pain_points),
    timeline: extractTimeline(conversationData.messages),
    score: 0
  };
  
  // Budget scoring
  if (qualification.budget >= 5000) qualification.score += 25;
  else if (qualification.budget >= 1500) qualification.score += 15;
  
  // Authority scoring  
  if (['CEO', 'CMO', 'VP'].some(title => qualification.authority.includes(title))) {
    qualification.score += 30;
  } else if (['Manager', 'Director'].some(title => qualification.authority.includes(title))) {
    qualification.score += 20;
  }
  
  // Need scoring
  if (qualification.need.urgency === 'high') qualification.score += 25;
  else if (qualification.need.urgency === 'medium') qualification.score += 15;
  
  // Timeline scoring
  if (qualification.timeline <= 30) qualification.score += 20;
  else if (qualification.timeline <= 90) qualification.score += 10;
  
  return qualification;
};
```

## Advanced Analytics & Reporting

### Marketing Attribution

#### Multi-Touch Attribution:
```javascript
// Code node para tracking de touchpoints
const trackTouchpoint = (eventData) => {
  const touchpoint = {
    user_id: eventData.user_id,
    session_id: eventData.session_id,
    timestamp: new Date().toISOString(),
    channel: eventData.utm_source || 'direct',
    campaign: eventData.utm_campaign,
    content: eventData.utm_content,
    page: eventData.page_url,
    event_type: eventData.event_type, // 'page_view', 'email_click', 'form_submit'
    conversion_value: eventData.purchase_amount || 0
  };
  
  // Guardar en base de datos
  await saveToDatabase('marketing_touchpoints', touchpoint);
  
  // Si es conversión, calcular atribución
  if (eventData.event_type === 'purchase') {
    await calculateAttribution(eventData.user_id, eventData.purchase_amount);
  }
};
```

#### Revenue Attribution:
```javascript
// Modelo de atribución time-decay
const calculateAttribution = async (userId, conversionValue) => {
  const touchpoints = await getTouchpoints(userId, 30); // 30 días
  const totalTouchpoints = touchpoints.length;
  
  const attributions = touchpoints.map((tp, index) => {
    // Más peso a touchpoints recientes
    const decayFactor = Math.pow(0.7, totalTouchpoints - index - 1);
    const attributedValue = (conversionValue * decayFactor) / totalTouchpoints;
    
    return {
      ...tp,
      attributed_value: attributedValue,
      attribution_percentage: (attributedValue / conversionValue) * 100
    };
  });
  
  // Guardar atribuciones
  await saveAttributions(attributions);
};
```

### Automated Reporting

#### Daily Marketing Report:
```json
{
  "model": "gpt-4",
  "messages": [
    {
      "role": "system",
      "content": "Eres un analista de marketing digital. Crea reportes ejecutivos claros y accionables."
    },
    {
      "role": "user",
      "content": "Crea un reporte diario de marketing basado en estos datos:\n\nTráfico web: {{$json.website_traffic}}\nLeads generados: {{$json.leads_today}}\nConversiones: {{$json.conversions}}\nGasto en ads: {{$json.ad_spend}}\nROI: {{$json.roi}}\nTop 3 fuentes de tráfico: {{$json.top_traffic_sources}}\n\nFormato: Resumen ejecutivo + métricas clave + insights + recomendaciones"
    }
  ]
}
```

#### Slack/Teams Notifications:
```json
{
  "method": "POST",
  "url": "https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK",
  "body": {
    "text": "📊 Reporte Marketing Diario",
    "blocks": [
      {
        "type": "section",
        "text": {
          "type": "mrkdwn",
          "text": "*Métricas del día:*\n• Leads: {{$json.leads_today}} (+{{$json.leads_growth}}%)\n• Conversiones: {{$json.conversions}}\n• ROI: {{$json.roi}}%"
        }
      },
      {
        "type": "section", 
        "text": {
          "type": "mrkdwn",
          "text": "*Top insights:*\n{{$json.ai_insights}}"
        }
      }
    ]
  }
}
```

## ROI Measurement & Optimization

### Cost Per Acquisition Tracking:
```javascript
// Calcular CPA por canal
const calculateCPA = (channelData) => {
  const channels = Object.keys(channelData);
  
  return channels.map(channel => ({
    channel: channel,
    spend: channelData[channel].total_spend,
    acquisitions: channelData[channel].conversions,
    cpa: channelData[channel].total_spend / channelData[channel].conversions,
    ltv_cpa_ratio: channelData[channel].avg_ltv / (channelData[channel].total_spend / channelData[channel].conversions)
  })).sort((a, b) => b.ltv_cpa_ratio - a.ltv_cpa_ratio);
};
```

### A/B Testing Automation:
```json
{
  "test_name": "email_subject_test",
  "variants": [
    {
      "name": "control",
      "subject": "{{$json.original_subject}}",
      "allocation": 50
    },
    {
      "name": "variation", 
      "subject": "{{$json.ai_generated_subject}}",
      "allocation": 50
    }
  ],
  "success_metric": "open_rate",
  "minimum_sample_size": 1000,
  "confidence_level": 95
}
```

## URLs y Recursos

### APIs Esenciales:
```
- LinkedIn: https://developer.linkedin.com/
- Meta Graph API: https://developers.facebook.com/docs/graph-api/
- HubSpot: https://developers.hubspot.com/
- Salesforce: https://developer.salesforce.com/
- Cal.com: https://cal.com/docs/api/
- Stripe: https://stripe.com/docs/api
```

### Herramientas Recomendadas:
```
- Lead Generation: Apollo, ZoomInfo, LinkedIn Sales Navigator
- Email Marketing: Mailchimp, ConvertKit, Brevo
- Analytics: Google Analytics 4, Mixpanel, Amplitude  
- A/B Testing: Optimizely, VWO, Google Optimize
- CRM: HubSpot, Salesforce, Pipedrive
```

---

*Esta guía proporciona todo el framework técnico necesario para implementar automatizaciones de marketing y ventas que generen ROI medible y escalable.*