{
  "format": "dataset-manifest/1",
  "slug": "marketing-event-logs",
  "version": 2,
  "seed": "marketing-event-logs:1",
  "spec": {
    "format": "dataset/1",
    "slug": "marketing-event-logs",
    "name": "Marketing Event Logs",
    "tagline": "Logs of marketing activities, leads, lost opportunities, channels, and partner interactions.",
    "description": "Marketers engage with potential clients through various channels, nurturing leads to convert them into loyal customers. This operation revolves around tracking interactions with leads, categorizing them by the channels through which they were reached, and analyzing the effectiveness of different marketing activities. Teams log every activity conducted, from initial outreach to follow-ups, and they also capture information regarding partnerships that facilitate these engagements. By understanding which leads convert and which opportunities are lost, businesses can refine their marketing strategies and better allocate their resources.\n\nThe dataset includes several interconnected tables: 'leads' captures essential information on potential clients including demographics and contact details. The 'activities' table records each interaction with leads, detailing the type of engagement and outcome. 'lost_opportunities' provides insight into leads that didn't convert, documenting specific reasons for loss to help identify trends or areas for improvement. The 'channels' table categorizes the various marketing avenues utilized to reach leads—such as email, social media, or events—while 'partners' holds details about external collaborators that support marketing efforts. The 'activity_partners' table creates a bridge between activities and partners, allowing analysis of which partnerships are most effective for different types of engagements.\n\nThese tables relate to each other through unique identifiers, enabling developers to perform joins and queries that reveal patterns in lead conversion rates, effectiveness of channels, and the reasons behind lost opportunities. By working with this synthetic dataset, developers can practice answering questions about marketing performance, lead nurturing processes, and strategic decision-making based on empirical data. Additionally, they can explore how different activities and channels impact overall success rates, providing valuable insights into optimizing marketing efforts.",
    "domain": "marketing",
    "shape": "event-log",
    "useCases": [
      "analytics-demo",
      "etl-pipelines"
    ],
    "keywords": [
      "marketing",
      "leads",
      "activities",
      "opportunities",
      "analytics",
      "CRM",
      "event logs"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "leads": {
        "description": "Each row represents a unique lead, capturing their details and the marketing channel through which they were acquired.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each lead."
          },
          "full_name": {
            "kind": "fullName",
            "description": "Full name of the lead.",
            "nullable": true
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "Email address of the lead.",
            "nullable": true
          },
          "channel": {
            "kind": "enum",
            "values": [
              "Email",
              "Social Media",
              "Webinar",
              "Paid Ads"
            ],
            "description": "The marketing channel through which the lead was acquired.",
            "weights": [
              6,
              4,
              2,
              1
            ]
          },
          "date_created": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-10-01",
            "description": "Date the lead was created.",
            "nullable": true,
            "when": {
              "column": "channel",
              "in": [
                "Email",
                "Social Media",
                "Webinar",
                "Paid Ads"
              ]
            },
            "dayProfile": "waking"
          }
        }
      },
      "activities": {
        "description": "Logs of activities conducted with leads, detailing the nature of the interaction and linking back to the lead.",
        "rows": {
          "per": "leads",
          "via": "lead_id",
          "min": 1,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each activity."
          },
          "lead_id": {
            "kind": "fk",
            "ref": "leads.id",
            "description": "Foreign key linking to the lead."
          },
          "activity_type": {
            "kind": "enum",
            "values": [
              "Call",
              "Email",
              "Meeting"
            ],
            "description": "Type of activity conducted with the lead.",
            "weights": [
              5,
              3,
              2
            ]
          },
          "activity_date": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-10-01",
            "description": "Date the activity took place.",
            "dayProfile": "waking",
            "trend": "growing"
          },
          "notes": {
            "kind": "sentence",
            "max": 250,
            "description": "Notes or comments about the activity.",
            "nullable": true
          }
        }
      },
      "lost_opportunities": {
        "description": "Captures details of leads that were marked as lost, including the reason for the loss and linking back to the lead.",
        "rows": {
          "per": "leads",
          "via": "lead_id",
          "min": 0,
          "max": 1,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each lost opportunity."
          },
          "lead_id": {
            "kind": "fk",
            "ref": "leads.id",
            "description": "Foreign key linking to the lead."
          },
          "lost_reason": {
            "kind": "enum",
            "values": [
              "No Budget",
              "Not Interested",
              "Timing Issue",
              "Competitor"
            ],
            "description": "Reason for the lost opportunity.",
            "weights": [
              4,
              3,
              2,
              1
            ]
          },
          "date_lost": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-10-01",
            "description": "Date the lead was marked as lost.",
            "nullable": true,
            "when": {
              "column": "lost_reason",
              "in": [
                "No Budget",
                "Not Interested",
                "Timing Issue",
                "Competitor"
              ]
            },
            "dayProfile": "business"
          }
        }
      },
      "channels": {
        "description": "Defines the various marketing channels available, linking to leads based on their acquisition channel.",
        "rows": 4,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each channel."
          },
          "channel_name": {
            "kind": "enum",
            "values": [
              "Email",
              "Social Media",
              "Webinar",
              "Paid Ads"
            ],
            "description": "Name of the marketing channel."
          },
          "description": {
            "kind": "sentence",
            "max": 150,
            "description": "Brief description of the channel.",
            "nullable": true
          }
        }
      },
      "partners": {
        "description": "Information about marketing partners involved in the activities, linking back to the leads and activities.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each partner."
          },
          "partner_name": {
            "kind": "company",
            "description": "Name of the marketing partner."
          },
          "contact_email": {
            "kind": "email",
            "from": "partner_name",
            "description": "Contact email for the partner.",
            "nullable": true
          },
          "phone": {
            "kind": "phone",
            "description": "Contact phone number for the partner.",
            "nullable": true
          }
        }
      },
      "activity_partners": {
        "description": "Links activities to partners, allowing for analysis of partner effectiveness.",
        "rows": {
          "per": "activities",
          "via": "activity_id",
          "min": 1,
          "max": 3,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for the link between activity and partner."
          },
          "activity_id": {
            "kind": "fk",
            "ref": "activities.id",
            "description": "Foreign key linking to the activity."
          },
          "partner_id": {
            "kind": "fk",
            "ref": "partners.id",
            "description": "Foreign key linking to the partner."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "timestamped",
      "nullable"
    ],
    "analysisQuestions": [
      "What are the most common reasons for lost opportunities?",
      "Which marketing channels generate the most leads?",
      "How do activities correlate with lead conversion rates?",
      "What types of activities are most effective in engaging leads?",
      "How often do leads convert after multiple activities?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Leads with Activities",
        "sql": "SELECT leads.full_name, activities.activity_type FROM leads JOIN activities ON leads.id = activities.lead_id;",
        "dialect": "postgres"
      },
      {
        "title": "Count Leads by Channel",
        "sql": "SELECT channel, COUNT(*) FROM leads GROUP BY channel;",
        "dialect": "postgres"
      },
      {
        "title": "Lost Opportunities by Reason",
        "sql": "SELECT lost_reason, COUNT(*) FROM lost_opportunities GROUP BY lost_reason;",
        "dialect": "postgres"
      },
      {
        "title": "Activity Summary by Lead",
        "sql": "SELECT lead_id, COUNT(activity_type) FROM activities GROUP BY lead_id ORDER BY COUNT(activity_type) DESC;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Marketing Analyst Review",
        "body": "A marketing analyst can use this dataset to review the effectiveness of various channels in generating leads. By examining the data, they can identify which channels are performing best and make data-driven decisions to optimize campaign strategies."
      },
      {
        "title": "ETL Pipeline Development",
        "body": "Data engineers can utilize this dataset to practice building ETL pipelines that extract, transform, and load marketing event logs into a data warehouse. This exercise will help them understand how to manage and manipulate marketing data effectively."
      },
      {
        "title": "Lead Conversion Analysis",
        "body": "Sales teams can analyze lead conversion rates by reviewing the activities conducted with leads. By identifying which activities correlate with successful conversions, they can refine their engagement strategies and improve overall performance."
      },
      {
        "title": "Partner Performance Evaluation",
        "body": "Marketing managers can leverage the dataset to assess the performance of different partners involved in lead activities. Analyzing how partner involvement impacts lead conversion can guide future partnerships and collaborations."
      }
    ]
  },
  "counts": {
    "channels": 4,
    "leads": 200,
    "activities": 461,
    "lost_opportunities": 62,
    "partners": 50,
    "activity_partners": 749
  },
  "stats": {
    "leads": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "full_name": {
          "nulls": 20,
          "distinct": 179,
          "min": "Alice Becker",
          "max": "Zara Wright"
        },
        "email": {
          "nulls": 33,
          "distinct": 167
        },
        "channel": {
          "nulls": 0,
          "distinct": 4,
          "min": "Email",
          "max": "Webinar"
        },
        "date_created": {
          "nulls": 0,
          "distinct": 200,
          "min": "2023-01-02 19:16:28",
          "max": "2023-09-30 14:22:49"
        }
      }
    },
    "activities": {
      "rows": 461,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 461,
          "min": 1,
          "max": 461
        },
        "lead_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "activity_type": {
          "nulls": 0,
          "distinct": 3,
          "min": "Call",
          "max": "Meeting"
        },
        "activity_date": {
          "nulls": 0,
          "distinct": 461,
          "min": "2023-01-04 09:35:08",
          "max": "2023-10-01 18:35:54"
        },
        "notes": {
          "nulls": 45,
          "distinct": 416
        }
      }
    },
    "lost_opportunities": {
      "rows": 62,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 62,
          "min": 1,
          "max": 62
        },
        "lead_id": {
          "nulls": 0,
          "distinct": 62,
          "min": 5,
          "max": 199
        },
        "lost_reason": {
          "nulls": 0,
          "distinct": 4,
          "min": "Competitor",
          "max": "Timing Issue"
        },
        "date_lost": {
          "nulls": 0,
          "distinct": 62,
          "min": "2023-01-02 12:00:13",
          "max": "2023-09-30 13:34:22"
        }
      }
    },
    "channels": {
      "rows": 4,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 4,
          "min": 1,
          "max": 4
        },
        "channel_name": {
          "nulls": 0,
          "distinct": 2,
          "min": "Paid Ads",
          "max": "Social Media"
        },
        "description": {
          "nulls": 1,
          "distinct": 3
        }
      }
    },
    "partners": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "partner_name": {
          "nulls": 0,
          "distinct": 48,
          "min": "Acme Analytics",
          "max": "Willow Works"
        },
        "contact_email": {
          "nulls": 3,
          "distinct": 46
        },
        "phone": {
          "nulls": 6,
          "distinct": 42
        }
      }
    },
    "activity_partners": {
      "rows": 749,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 749,
          "min": 1,
          "max": 749
        },
        "activity_id": {
          "nulls": 0,
          "distinct": 461,
          "min": 1,
          "max": 461
        },
        "partner_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/channels.csv",
      "format": "csv",
      "table": "channels",
      "key": "datasets/marketing-event-logs/v2/csv/channels.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/csv/channels.csv",
      "bytes": 245,
      "sha256": "f5cece624f36249308242a4b5a7afe2722b4f5f04f86d0f70faba5366179ae70",
      "rows": 4,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/leads.csv",
      "format": "csv",
      "table": "leads",
      "key": "datasets/marketing-event-logs/v2/csv/leads.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/csv/leads.csv",
      "bytes": 12908,
      "sha256": "929dfffa2ba8fbc2d03740871ab85a03e362349b41554ca1f21bc9c72b5825ba",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/activities.csv",
      "format": "csv",
      "table": "activities",
      "key": "datasets/marketing-event-logs/v2/csv/activities.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/csv/activities.csv",
      "bytes": 39263,
      "sha256": "3c7aaadb8119dd40fdb6cf642892ff00d26bc1c4bcfca846de808d84872cc881",
      "rows": 461,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/lost_opportunities.csv",
      "format": "csv",
      "table": "lost_opportunities",
      "key": "datasets/marketing-event-logs/v2/csv/lost_opportunities.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/csv/lost_opportunities.csv",
      "bytes": 2470,
      "sha256": "a2dde550e8c7efd71dacfbae7370412d66914f99dec002c959f812ed5f31ad14",
      "rows": 62,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/partners.csv",
      "format": "csv",
      "table": "partners",
      "key": "datasets/marketing-event-logs/v2/csv/partners.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/csv/partners.csv",
      "bytes": 2851,
      "sha256": "cf5acd897960e9dd72e1a788421d3461947c28738ed6d1a88947b23dec8e911c",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/activity_partners.csv",
      "format": "csv",
      "table": "activity_partners",
      "key": "datasets/marketing-event-logs/v2/csv/activity_partners.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/csv/activity_partners.csv",
      "bytes": 8607,
      "sha256": "95af5e6e648780fce4065fbd00013e75b57511af525c6c5a85bde1f96b61235c",
      "rows": 749,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "marketing-event-logs.json",
      "format": "json",
      "table": null,
      "key": "datasets/marketing-event-logs/v2/marketing-event-logs.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/marketing-event-logs.json",
      "bytes": 200340,
      "sha256": "e0d6fefee83a9aa4cde15f9f3dcef9744544914d49880787a9dbf21947e6374a",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/marketing-event-logs/v2/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/sql/postgres.sql",
      "bytes": 88233,
      "sha256": "668df24d2a93bdc58faf403c465aa413a0eea40637e946cd10f6d9c6afc1cd5f",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/marketing-event-logs/v2/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/sql/mysql.sql",
      "bytes": 87539,
      "sha256": "59b332963da7335ef6f3b9a0eff71cb78b7a382ada6ee2623198989c5ffe03f7",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/marketing-event-logs/v2/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/sql/mssql.sql",
      "bytes": 90328,
      "sha256": "5914610a1743b7a6a629366982571f6413c02488b5d9a495e39bb453dcd0e8c1",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/marketing-event-logs/v2/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/sql/sqlite.sql",
      "bytes": 87259,
      "sha256": "29819125212b7af1902e5977fd08f206e855c8c8919664c66cded28c0d3f6d47",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/marketing-event-logs/v2/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/prisma/seed.ts",
      "bytes": 167363,
      "sha256": "5ac15d27d8d7be61ceaf43e9242aee1cb6c267814775690b32f6d08033e9602a",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/marketing-event-logs/v2/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/marketing-event-logs/v2/django/fixtures.json",
      "bytes": 268355,
      "sha256": "11eeb11ced11d2d9e4536d0b25753f3c4bfff4e3e49b1cefe7c2e59b7bc4c6d4",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788734209693,
  "updatedAt": 1788784891477
}
