Bitácora: Cómo realizar e-mail marketing con Phplist en servidor compartido

  • Autor Autor neivanito
  • Fecha de inicio Fecha de inicio
neivanito

neivanito

Beta
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Buenas colegas,

A continuación comparto a manera de bitácora una experiencia reciente que tuve con Hostgator usando phplist instalado con softaculous y algunos detalles a tener en cuenta.
Mi experiencia inicia con la intención de realizar e-mail marketing ofreciendo un servicio para personas que no conocen a fondo el tema de desarrollo web.
Mi servicio consiste en disponer a los usuarios con pocos conocimientos de un WordPress con Astra e starter templates entre otros Pluguins preinstalados y darle unas indicaciones muy generales acerca de lo que puede ser usar WordPress con plantillas gratuitas además de unas indicaciones generales para que los que no tienen dinero para hacer su pagina, pero sí tiempo lo hagan.

He probado campañas con Facebook y con WhatsApp inicialmente para atraer a conocidos, con quiénes ya he hecho unos negocios, sin embargo me interesó ofrecer el servicio a personas que no conozco para ver qué tanto puedo atraer un público más natural.

Para esto lo primero que pensé fue en una estrategia de e-mail marketing a ver a cuántos alcanzo a capturar si les ofrezco este servicio de 42 dólares aproximadamente el año.

Fuentes de información.
Al tener empresa en Colombia, logré una base de datos de todas las empresas creadas este año, teniendo en cuenta que son aproximadamente 488mil, pensé enviar un correo con copia oculta a todos ofreciendo el servicio a ver cuantos interesados les llama la atención.

Redacté el mensaje con ayuda de inteligencia artificial y creé un par de links usando UTM para poder identificar quienes llegan por allí a una landing y a una página web con otros servicios.

Cargue de correos como grupos:
Debido a que tengo un servicio de hosting compartido con hostgator.co en realidad un reseller, intenté usar el correo cin roundcube que es lo que viene por defecto en mi servidor compartido.
Ahí tuve el primer problema, cargar esos contactos, de correo fue bastante tedioso, intenté tantas veces cargar los archivos haciendo las siguientes pruebas y encontré lo siguiente.
Los csv en Latinoamérica usan normalmente el separador ";" sin embargo el roundcube lo reconoció solamente cuando cambié el separador por ",".
También que deben tener la primera fila de esta forma
"First Name","Last Name","Display Name","E-mail Address"
Luego de intentar muchas veces y de ir reduciendo el tamaño del archivo, se subieron 16mil contactos.
Al parecer llegaron a un punto específico y no pudo cargar más, también ya cargados tocó asignarlos a los diferentes grupos de manera manual seleccionando de a 200 y arrastrando.
Creé 10 grupos cada uno de mil contactos.

Me dispuse a enviar el mensaje a un grupo de 1000 contactos, ofreciendo, sin embargo me puse a investigar más a fondo el tema, mi temor era ser baneado de alguna manera, entonces lo dejé allí y no envié nada hasta no confirmar.

Limitaciones

Leyendo me di cuenta que Hostgator.co tiene unos límites de envíos de correo por hora que para Colombia están en 500 correos por hora.

Al parecer cada servicio de SMTP tiene unos límites y es importante verificarlo antes de enviar correos masivos.

Otra alternativa.
Me dispuse entonces a investigar y encontré el phplist muy bien puntuado en softaculous, prometía capacidades para enviar correos masivos dentro del mismo con las restricciones que se le impongan.

Phplist
Lo instalé con el softaculous, me dispuse a configurarlo y me gustó.
El programa también sirve para que las personas se suscriban a listas de correo, se pueden crear listas de correo.
Se pueden cargar listas masivas de correo con diferentes atributos (otros campos en la lista de correo que se adjunta)
Prmite cargar csv, sin embargo, inicié con los 488mil y no lo permitió por muy grande, los clasifique de una forma en la que quedaron aproximadamente mitad y mitad, de 277mil un archivo y el otro de un poco menos y tampoco fue posible.

Tome la decisión de seleccionar una actividad económica de donde extraje dos archivos bastante más pequeños, uno de mil ochocientos y el otro de 2.300, que corresponden a personas naturales y empresas registradas relacionadas con textiles respectivamente.

Estos archivos sí los dejó cargar incluyendo todos los campos adicionales, tipo de empresa, actividades económicas secundarias, entre otras. Lo importante en el cargue es que la columna que tiene el correo tenga el encabezado que se llame "email" si lo escribes de otra forma posiblemente no funcione, cada archivo se puede cargar a una lista de correos independiente, las listas se pueden crear ahí mismo.

Campaña.
En el phplist se manejan plantillas HTML para el contenido del correo y se manejan campañas que es donde se redacta el correo que se enviará masivamente.
Entonces me dispuse a crear la campaña, copié el contenido ya creado con la IA e hice varias pruebas enviando a mi correo el mensaje para ver cómo se veía, en la campaña le agregué sólo una lista para ver cómo me iba.

Busqué la forma de configurar la velocidad a la que envía los correos y resultó que no tiene interface gráfico para realizar está configuración, por lo que hay que ir al administrador de archivos del cPanel a configurar la velocidad con la que se envían los correos teniendo en cuenta que existen 3 parámetros dentro del archivos cinfig.php importantes para definir esto.

El primero para definir la cantidad de correos que se envían en un solo envío.
define("MAILQUEUE_BATCH_SIZE",30);

Y el segundo para configurar la cantidad de tiempo de espera necesario para que envíe cada lote de correos en segundos.

define("MAILQUEUE_BATCH_PERIOD",300);

Así los dejé inicialmente, lo programé para las 7am y me acosté a dormir.

Al día siguiente tipo 9am, "en realidad unas horas después me acosté como a las 5am", estuve mirando el Google analitycs a ver si alguien había llegado y nada.

Me senté en el pc a mirar el phplist a ver qué había pasado y resulta que apareció la campaña en cola.
Me dispuse entonces a reanudar la campaña, que inicie a enviar correos como loco. 30 correos cada 300 segundos.
Esperé un rato...
Cuando depronto apareció un error. Verifiqé y se trataba de un error de memoria, pensaba que era por falta de memoria en el servidor compartido, sin embargo me dispuse a verificar si mi PC tenía alguna carga adicional de memoria.

Para mi sorpresa, cuando ejecutaba la tarea de enviar correos y empezaba a hacerlo, la memoria de mi PC. Algo pequeña. 8gb empezó a aumentar en uso, llegaba a 7.5 o 7.6 y de caía nuevamente.

Sin embargo me di cuenta de las maravillas del phplist, resulta que brinda información estadística supuestamente de quienes y cuando han abierto el correo, así como de los click que han hecho en los enlaces y sobretodo quienes han hecho click y cuando han abierto el correo. Todavía no he comprendido por qué algunos correos dice que los ha abierto varias veces.

Por otro lado y para evitar que se cayera por memoria primero bajé procesos de mi PC para tener más memoria disponible y luego cambié la rata de envío de correos.

Encontré esta otra variable que permite aumentar o disminuir el tiempo de envío de correos:

define('MAILQUEUE_THROTTLE',0);

Que se supone que brinda un tiempo entre mensaje y mensaje y no entre lote y lote de mensajes.

Lo configuré con 10 correos cada 200 segundos y con este no he tenido problema, la memoria no se sobrecarga y estoy enviando correos a una taza de 180 correos por hora.

Intenté mejorarlo a 15 correos cada 200 minutos y vuelve y se sobrecarga la memoria.

Sigo en ese juego a ver cuál es el optimo.

Por ahora he enviado como 700 correos de los cuales se ha abierto aproximadamente el 8%, esto mejorará con el tiempo.
Y clicks a mis links sólo han sido 7, sin embargo no aparecen en el Google analytics, todavía no se si la gente lo abre y no alcanza a abrir la página o que ha pasado.

Ese es mi aporte. Agradezco cualquier recomendación de quienes lean esta bitácora.
 
Atrás
Arriba