{
  "format": "dataset-manifest/1",
  "slug": "charity-donation-app",
  "version": 3,
  "seed": "charity-donation-app:1",
  "spec": {
    "format": "dataset/1",
    "slug": "charity-donation-app",
    "name": "Charity Impact Analytics",
    "tagline": "User activity, donation amounts, campaign details, and engagement metrics for nonprofit charitable initiatives.",
    "description": "Nonprofits leverage this platform to facilitate and manage donations for various charitable campaigns. Users interact with the app to contribute funds, receive badges for engagement, and track the impact of their donations through metrics. This dataset models user activity, donation amounts, campaign details, and engagement levels with charitable representatives. The tables are designed to demonstrate the relationships between users, their donations, and the campaigns they support. Questions such as 'What are the trends in donations over time?' and 'Which campaigns have the highest engagement?' can be answered with this data. The dataset represents synthetic data, providing a safe environment for practicing data analysis and building dashboards.",
    "domain": "nonprofit",
    "shape": "time-series",
    "useCases": [
      "analytics-demo",
      "bi-dashboards"
    ],
    "keywords": [
      "nonprofit",
      "donation",
      "user engagement",
      "campaigns",
      "analytics",
      "fundraising"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "Each row represents a user of the donation app, linking to their donations and engagement metrics.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user."
          },
          "full_name": {
            "kind": "fullName",
            "description": "User's full name."
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "User's email address.",
            "nullable": true
          },
          "join_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "Date the user joined the app.",
            "nullable": true
          }
        }
      },
      "donations": {
        "description": "Records of donations made by users, linking to the corresponding user and campaign.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 10,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each donation."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "Identifier for the user who made the donation."
          },
          "campaign_id": {
            "kind": "fk",
            "ref": "campaigns.id",
            "description": "Identifier for the campaign supported by the donation."
          },
          "amount": {
            "kind": "decimal",
            "min": 5,
            "max": 5000,
            "description": "Amount donated.",
            "distribution": "long-tail"
          },
          "donation_date": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "dayProfile": "business",
            "description": "Date and time of the donation.",
            "nullable": true
          }
        }
      },
      "campaigns": {
        "description": "Details of campaigns that users can donate to, linking to donation records.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each campaign."
          },
          "name": {
            "kind": "words",
            "max": 3,
            "description": "Name of the campaign.",
            "pool": [
              "impact",
              "change",
              "support",
              "community",
              "growth",
              "hope",
              "future",
              "empower",
              "connect",
              "care",
              "action",
              "together",
              "justice",
              "strength",
              "love",
              "mission",
              "inspire",
              "volunteer",
              "donate",
              "transform",
              "outreach",
              "awareness",
              "education",
              "advocate",
              "collaborate",
              "leadership",
              "sustainability",
              "partnership",
              "initiative",
              "advancement",
              "service",
              "development",
              "resources",
              "engagement",
              "wellness",
              "compassion",
              "progress",
              "unity",
              "trust",
              "respect",
              "advocacy",
              "network",
              "solutions",
              "commitment",
              "vision",
              "strategy",
              "success",
              "empowerment",
              "inclusion",
              "equality",
              "transparency",
              "responsibility",
              "actionable",
              "results"
            ],
            "min": 1
          },
          "goal_amount": {
            "kind": "decimal",
            "min": 1000,
            "max": 100000,
            "description": "Fundraising goal for the campaign.",
            "nullable": true,
            "distribution": "heavy-tail"
          },
          "start_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "Campaign start date.",
            "nullable": true
          },
          "end_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "Campaign end date.",
            "nullable": true
          }
        }
      },
      "engagements": {
        "description": "Records of user engagement metrics, including badges earned for participation.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each engagement record."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "Identifier for the user associated with the engagement."
          },
          "badge": {
            "kind": "enum",
            "values": [
              "Bronze",
              "Silver",
              "Gold",
              "Platinum"
            ],
            "description": "Badge earned for engagement.",
            "weights": [
              6,
              3,
              2,
              1
            ]
          },
          "engagement_date": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "dayProfile": "business",
            "description": "Date of the engagement.",
            "nullable": true,
            "when": {
              "column": "badge",
              "in": [
                "Silver",
                "Gold"
              ]
            }
          }
        }
      },
      "campaign_donations": {
        "description": "Aggregated records of donations per campaign, allowing for trend analysis over time.",
        "rows": {
          "per": "campaigns",
          "via": "campaign_id",
          "min": 5,
          "max": 20,
          "skew": "heavy-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each campaign donation record."
          },
          "campaign_id": {
            "kind": "fk",
            "ref": "campaigns.id",
            "description": "Identifier for the campaign."
          },
          "total_donations": {
            "kind": "decimal",
            "min": 1000,
            "max": 500000,
            "description": "Total amount donated to the campaign.",
            "nullable": true,
            "distribution": "heavy-tail"
          },
          "donation_count": {
            "kind": "int",
            "min": 1,
            "max": 100,
            "description": "Number of donations received by the campaign.",
            "nullable": true,
            "distribution": "long-tail"
          },
          "report_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "Date of the report.",
            "nullable": true
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "timestamped",
      "monetary",
      "categorical",
      "nullable"
    ],
    "analysisQuestions": [
      "What is the average donation amount per campaign?",
      "Which campaigns received the most donations over time?",
      "How does user engagement correlate with total donations?",
      "What days of the week see the highest level of donations?",
      "Which badges are most commonly awarded to users?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Users and Donations",
        "sql": "SELECT u.full_name, d.amount FROM users u JOIN donations d ON u.id = d.user_id;",
        "dialect": "postgres"
      },
      {
        "title": "Total Donations per Campaign",
        "sql": "SELECT c.name, SUM(d.amount) FROM campaigns c JOIN donations d ON c.id = d.campaign_id GROUP BY c.name;",
        "dialect": "postgres"
      },
      {
        "title": "Engagement Metrics by User",
        "sql": "SELECT u.full_name, COUNT(e.id) AS badges_earned FROM users u LEFT JOIN engagements e ON u.id = e.user_id GROUP BY u.full_name;",
        "dialect": "postgres"
      },
      {
        "title": "Monthly Donation Trends",
        "sql": "SELECT DATE_TRUNC('month', d.donation_date) AS month, SUM(d.amount) FROM donations d GROUP BY month ORDER BY month;",
        "dialect": "postgres"
      },
      {
        "title": "Average Donation by Campaign and Badge",
        "sql": "SELECT c.name, e.badge, AVG(d.amount) FROM donations d JOIN campaigns c ON d.campaign_id = c.id JOIN engagements e ON d.user_id = e.user_id GROUP BY c.name, e.badge;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Nonprofit Campaign Analysis",
        "body": "Nonprofit organizations can use this data to analyze the effectiveness of their fundraising campaigns, identifying trends in donations and user engagement over time. By understanding which campaigns perform best, they can optimize future efforts and allocate resources more effectively."
      },
      {
        "title": "User Engagement Tracking",
        "body": "Data analysts at nonprofits can track user engagement metrics, such as badge achievements and donation frequency. This information helps in designing targeted communication strategies to increase user participation and enhance overall donation amounts."
      },
      {
        "title": "Dashboard Creation",
        "body": "Business intelligence professionals can leverage this dataset to create interactive dashboards that visualize donation trends and user activities. These dashboards can provide insights for better decision-making and stakeholder reporting."
      },
      {
        "title": "Peer Fundraising Event Insights",
        "body": "Organizations hosting peer fundraising events can analyze participation rates and donation patterns. By identifying successful strategies, they can enhance their event planning and increase overall fundraising success."
      }
    ]
  },
  "counts": {
    "campaigns": 50,
    "campaign_donations": 415,
    "users": 200,
    "donations": 791,
    "engagements": 455
  },
  "stats": {
    "users": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "full_name": {
          "nulls": 0,
          "distinct": 197,
          "min": "Alice Mendes",
          "max": "Zoe Nakamura"
        },
        "email": {
          "nulls": 19,
          "distinct": 180
        },
        "join_date": {
          "nulls": 16,
          "distinct": 171,
          "min": "2020-01-04",
          "max": "2023-01-01"
        }
      }
    },
    "donations": {
      "rows": 791,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 791,
          "min": 1,
          "max": 791
        },
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "campaign_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "amount": {
          "nulls": 0,
          "distinct": 790,
          "min": 5,
          "max": 4997.54
        },
        "donation_date": {
          "nulls": 84,
          "distinct": 707,
          "min": "2020-01-01 06:11:28",
          "max": "2022-12-27 09:41:52"
        }
      }
    },
    "campaigns": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "name": {
          "nulls": 0,
          "distinct": 48
        },
        "goal_amount": {
          "nulls": 4,
          "distinct": 46,
          "min": 1000.04,
          "max": 90160.86
        },
        "start_date": {
          "nulls": 4,
          "distinct": 46,
          "min": "2020-02-08",
          "max": "2022-11-03"
        },
        "end_date": {
          "nulls": 6,
          "distinct": 44,
          "min": "2020-01-14",
          "max": "2023-12-30"
        }
      }
    },
    "engagements": {
      "rows": 455,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 455,
          "min": 1,
          "max": 455
        },
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "badge": {
          "nulls": 0,
          "distinct": 4,
          "min": "Bronze",
          "max": "Silver"
        },
        "engagement_date": {
          "nulls": 278,
          "distinct": 177,
          "min": "2020-01-06 11:54:10",
          "max": "2022-12-20 11:59:23"
        }
      }
    },
    "campaign_donations": {
      "rows": 415,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 415,
          "min": 1,
          "max": 415
        },
        "campaign_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "total_donations": {
          "nulls": 46,
          "distinct": 369,
          "min": 1000.12,
          "max": 498650.7
        },
        "donation_count": {
          "nulls": 41,
          "distinct": 93,
          "min": 1,
          "max": 99
        },
        "report_date": {
          "nulls": 34,
          "distinct": 333,
          "min": "2020-01-10",
          "max": "2023-12-30"
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/campaigns.csv",
      "format": "csv",
      "table": "campaigns",
      "key": "datasets/charity-donation-app/v3/csv/campaigns.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/csv/campaigns.csv",
      "bytes": 2510,
      "sha256": "1b45132cc88da8f6be685a4f8184ae8b1e287c995412abe9aeb233e3a9f34cf7",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/campaign_donations.csv",
      "format": "csv",
      "table": "campaign_donations",
      "key": "datasets/charity-donation-app/v3/csv/campaign_donations.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/csv/campaign_donations.csv",
      "bytes": 11892,
      "sha256": "8c2153354a3ac3063ef111616733e713186960a172b82067b8fb42946abc34fa",
      "rows": 415,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/charity-donation-app/v3/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/csv/users.csv",
      "bytes": 9753,
      "sha256": "1994293f6e6f535269754885c01a1e1a4bbc170df3089e7c7bdb63381e8d0875",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/donations.csv",
      "format": "csv",
      "table": "donations",
      "key": "datasets/charity-donation-app/v3/csv/donations.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/csv/donations.csv",
      "bytes": 28836,
      "sha256": "9c9702491ad94a28bd2dbb5ffb80e358672aa5f93f432e7f3053fc01d838b4e0",
      "rows": 791,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/engagements.csv",
      "format": "csv",
      "table": "engagements",
      "key": "datasets/charity-donation-app/v3/csv/engagements.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/csv/engagements.csv",
      "bytes": 10720,
      "sha256": "863a19229515e304c21f66b4bd1415a6965c2b85ad0828a4df9167804b2aa2ad",
      "rows": 455,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "charity-donation-app.json",
      "format": "json",
      "table": null,
      "key": "datasets/charity-donation-app/v3/charity-donation-app.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/charity-donation-app.json",
      "bytes": 262144,
      "sha256": "b6f50922ef16084abae56804bcd81e0088362e3691fb42fe44ae631c1829057e",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/charity-donation-app/v3/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/sql/postgres.sql",
      "bytes": 92354,
      "sha256": "0fa1f9aa88f24913f1df24f3584cd95b3b42fef7052ee5c57903007f526e7a0e",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/charity-donation-app/v3/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/sql/mysql.sql",
      "bytes": 91777,
      "sha256": "233fbd7863fb33dc3df4f6dd1e58de8d3c0eee68b0140980679392d9a78f8418",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/charity-donation-app/v3/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/sql/mssql.sql",
      "bytes": 94537,
      "sha256": "6bc42ef68b2670bec8a72b1c8d2f5aaab02721b5b784c186a6cec23ea70d12e4",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/charity-donation-app/v3/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/sql/sqlite.sql",
      "bytes": 91576,
      "sha256": "22f33fa83f09335c40d07415b17c8873c3b1fc508ea6c9a0e9d29d33148ac33e",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/charity-donation-app/v3/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/prisma/seed.ts",
      "bytes": 211890,
      "sha256": "fda1748b976da6b3d8da425c7a24f601615aed5e581e1773dad839767e611bb8",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/charity-donation-app/v3/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charity-donation-app/v3/django/fixtures.json",
      "bytes": 347558,
      "sha256": "a9a7eccdc170a82ef6e6976b3ba3640c9c9ba45a1e95fd66607dea905c95f51e",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788767030781,
  "updatedAt": 1788782729964
}
