sql >> Base de Datos >  >> RDS >> Database

Modelos de base de datos para comercio electrónico Parte 1:El boletín

En general, a la gente no le gusta recibir correos electrónicos no solicitados. Sin embargo, a veces se suscriben a boletines para obtener un descuento o para mantenerse al día con nuevos productos. Este artículo presentará un enfoque para diseñar una base de datos de boletines.

¿Por qué preocuparse por los correos electrónicos de los boletines?

Los suscriptores del boletín informativo representan un grupo de clientes extremadamente valioso:están interesados ​​en nuestros productos, confían en nosotros y dedican tiempo a revisar nuestras ofertas y promociones. Además, el envío de correos electrónicos a los clientes es una de las herramientas más económicas del marketing online. Sin embargo, debe hacerse con cuidado:los datos deben actualizarse diariamente (porque las personas se suscriben y cancelan la suscripción) y deben ser de alta calidad (no queremos enviar correos electrónicos no deseados, ya que afecta negativamente la imagen de la marca).

Entonces surge la pregunta de cómo gestionar este proceso de obtener datos de calidad y actualizarlos diariamente. Hay muchas opciones...

Y el ganador es...

¡Análisis de clientes! Hoy en día, el factor más importante para mantenerse por delante de la competencia es encontrar información a partir de los datos y tomar decisiones comerciales sobre esa base. ¿No sería fantástico revisar el historial de envíos de boletines y analizar su intensidad y eficacia? ¿Para cada cliente? ¿Y luego unirlo con datos de compra, descubrir los intereses del cliente, preparar recomendaciones individuales y enviarlas mediante correos electrónicos personalizados?

Tal enfoque seguramente aumentaría nuestra tasa de conversión (CR). La tasa de conversión es uno de los indicadores clave de rendimiento de marketing en línea más importantes; muestra cuántas personas realizan una compra después de ver parte de nuestro material promocional (anuncios, boletines, etc.). Un CR alto significa una mayor eficacia comercial.

Ahora que entendemos algo del marketing involucrado, ¡entremos en el modelo de datos!

¡Empecemos a modelar una base de datos de boletines!

Profundizando, vemos que las dos tablas principales en el modelo son el client y newsletter mesas.

Como nos interesará principalmente el análisis del cliente, el client la mesa debe permanecer en el centro del modelo. En esta tabla, cada cliente tiene su propio id único . También almacenaremos información como el first_name del cliente. y last_name , información de contacto (email , phone_number , dirección postal), birthday , create_date (cuando se ingresó el registro del cliente en la base de datos) y su source_id – es decir, si se registraron en nuestro sitio o algún socio comercial nos proporcionó sus datos.

El newsletter La tabla almacena datos sobre cada creación de boletín. Los boletines se pueden identificar en función de su id único . Cada uno se describe con un name (por ejemplo, "Nueva colección de ropa de mujer:otoño de 2016"), correo electrónico subject (“¡La ropa más a la moda para ella, cómprala ahora!”), html_file (el archivo que contiene el código HTML para ese boletín en particular), boletín type (por ejemplo, "nueva colección", "boletín de cumpleaños") y el create_date .

Consentimientos de comercialización

Para enviar información de marketing (por correo postal, teléfono, correo electrónico o SMS), una empresa necesita obtener el consentimiento de sus clientes. En nuestro modelo, los consentimientos se almacenan en una tabla separada denominada marketing_consent . Mantiene información sobre el conjunto actual de consentimientos de marketing para todos nuestros clientes. Los consentimientos se codifican como variables booleanas:VERDADERO (acepta la comunicación de marketing) o FALSO (no acepta).

Es muy importante almacenar información sobre cuándo un cliente accedió a recibir publicidad a través de cada canal de comunicación. También es beneficioso registrar cuándo retiraron su consentimiento para cada canal. A tales efectos, el consent_change mesa fue diseñada.

Cada cambio tiene un id único y se asigna a un cliente en particular por su client_id . Cuando un cliente solicita ser eliminado de los correos electrónicos del boletín, el id del boletín del channel la tabla también se almacenará en el consent_change channel_id de la tabla atributo. El new_consent El atributo es un valor booleano (VERDADERO o FALSO) y representa nuevos consentimientos de marketing.

La update_date La columna contiene la fecha en que un cliente solicitó un cambio. Esta estructura nos permite extraer un conjunto de consentimientos para todos los clientes en un día determinado. Es extremadamente útil si un cliente se queja de recibir un correo electrónico después de que ya se haya dado de baja de nuestro boletín. Con esta información archivada, podemos verificar cuándo se canceló la suscripción y, con suerte, confirmar que se hizo después de que se envió el boletín por correo electrónico.

Mantener los envíos en orden

Diseñar un modelo de base de datos perfecto para el envío de boletines no es pan comido. ¿Por qué? Bueno, obviamente necesitamos poder identificar cualquier creación de boletín informativo (es decir, diseño, gráficos, productos, enlaces, etc.). También sabemos que una creación se puede enviar varias veces:los gerentes pueden decidir que un grupo de correos electrónicos se enviará por la mañana a la mitad de los clientes y por la noche a la otra mitad. Por lo tanto, es crucial registrar qué clientes recibieron qué boletín informativo y cuándo. Es por esto que esta parte del modelo consta de tres tablas:

  • El newsletter tabla, que describimos anteriormente.
  • El newsletter_sendout tabla, que identifica un único envío. Por ejemplo, el boletín de Navidad (id =“2512”) se envió por correo electrónico el 10 de diciembre a las 6 p.m. Este mantenimiento de registros permite a los especialistas en marketing enviar el mismo boletín a grupos separados de clientes en diferentes momentos.
  • Los sendout_receivers tabla, que recopila datos sobre los destinatarios de cada envío. Habrá un registro para cada correo electrónico de cada envío. Cada fila tiene tres columnas:id (identificando el evento de enviar un correo electrónico a un cliente), client_id (identificando clientes de nuestra base de datos) y nl_sendout_id (identificando el envío de un boletín informativo).

Aquí está el modelo de boletín completo:




¿Alguna idea sobre cómo mejorar este modelo?

Una forma posible es agregar una response mesa. Esto almacenaría las reacciones de los clientes, ya sea que abrieran el correo electrónico, hicieran clic en el anuncio o nunca vieron el mensaje porque estaba marcado como correo no deseado. ¿Dónde debemos agregar la response tabla a nuestro modelo y qué relación se debe aplicar? Comparta sus pensamientos en la sección de comentarios a continuación.