{
  "format": "dataset-manifest/1",
  "slug": "charitable-contributions-dataset",
  "version": 2,
  "seed": "charitable-contributions-dataset:1",
  "spec": {
    "format": "dataset/1",
    "slug": "charitable-contributions-dataset",
    "name": "Charitable Contributions Dataset",
    "tagline": "Donor contributions, campaign details, and performance metrics from various nonprofit fundraising efforts.",
    "description": "Nonprofits execute diverse fundraising campaigns to support their missions, actively engaging with donors to gather vital financial contributions. Each donation is linked to specific campaigns, facilitating a detailed analysis of donor behavior and campaign effectiveness. The dataset captures a dynamic environment where donations are made, rewards are claimed, and the performance of campaigns is monitored, providing a comprehensive view of the fundraising landscape.\n\nThe tables in this dataset include donors, campaigns, donations, rewards, and campaign_performance. Each donor is represented by a single row in the donors table, detailing their contributions and engagement with campaigns. The campaigns table outlines the different initiatives launched by the nonprofit, while the donations table records individual contributions associated with these campaigns. Rewards, linked to donations, reflect the incentives provided to donors based on their support levels. The campaign_performance table aggregates data on how well each campaign is performing in terms of financial success and donor engagement.\n\nBy exploring relationships among these tables, developers can answer questions such as which campaigns attract the most donations, how donor demographics influence campaign success, and which rewards are most effective in encouraging contributions. This dataset is particularly useful for practicing data analysis and reporting, as it offers ample opportunities to analyze trends, donor behavior, and the effectiveness of different fundraising strategies. \n\nIt's important to note that the data contained within this dataset is synthetic, designed to model real-world scenarios in the nonprofit sector while ensuring user privacy and data integrity.",
    "domain": "nonprofit",
    "shape": "transactional",
    "useCases": [
      "sql-practice",
      "orm-seeding"
    ],
    "keywords": [
      "donations",
      "fundraising",
      "nonprofit",
      "campaigns",
      "donors",
      "rewards",
      "charity"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "donors": {
        "description": "Each row represents a unique donor, linking to their contributions and related rewards.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each donor."
          },
          "full_name": {
            "kind": "fullName",
            "description": "The full name of the donor."
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "Email address of the donor."
          },
          "phone": {
            "kind": "phone",
            "description": "Contact number of the donor.",
            "nullable": true
          },
          "city": {
            "kind": "city",
            "description": "City where the donor resides.",
            "nullable": true
          },
          "country": {
            "kind": "country",
            "from": "city",
            "description": "Country where the donor resides.",
            "nullable": true
          }
        }
      },
      "campaigns": {
        "description": "Each row represents a fundraising campaign, detailing its objectives and duration.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each campaign."
          },
          "name": {
            "kind": "sentence",
            "min": 5,
            "max": 20,
            "description": "Name of the fundraising campaign."
          },
          "start_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Start date of the campaign.",
            "trend": "growing"
          },
          "end_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "End date of the campaign.",
            "trend": "growing"
          },
          "goal_amount": {
            "kind": "decimal",
            "min": 1000,
            "max": 50000,
            "scale": 2,
            "description": "Financial goal set for the campaign.",
            "nullable": true,
            "distribution": "long-tail"
          }
        }
      },
      "donations": {
        "description": "Each row records a donation made by a donor to a campaign, linking the two entities.",
        "rows": {
          "per": "donors",
          "via": "donor_id",
          "min": 1,
          "max": 15,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each donation."
          },
          "donor_id": {
            "kind": "fk",
            "ref": "donors.id",
            "description": "Identifier for the donor making the donation."
          },
          "campaign_id": {
            "kind": "fk",
            "ref": "campaigns.id",
            "description": "Identifier for the campaign receiving the donation."
          },
          "amount": {
            "kind": "decimal",
            "min": 10,
            "max": 10000,
            "scale": 2,
            "description": "Amount of the donation.",
            "nullable": true,
            "distribution": "long-tail"
          },
          "donation_date": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date and time when the donation was made.",
            "dayProfile": "waking"
          }
        }
      },
      "rewards": {
        "description": "Each row details rewards that can be claimed by donors based on their contributions.",
        "rows": 30,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each reward."
          },
          "campaign_id": {
            "kind": "fk",
            "ref": "campaigns.id",
            "description": "Identifier for the campaign offering the reward."
          },
          "description": {
            "kind": "sentence",
            "min": 10,
            "max": 100,
            "description": "Description of the reward.",
            "nullable": true
          },
          "min_donation": {
            "kind": "decimal",
            "min": 50,
            "max": 5000,
            "scale": 2,
            "description": "Minimum donation required to claim the reward.",
            "nullable": true,
            "distribution": "long-tail"
          }
        }
      },
      "campaign_performance": {
        "description": "Each row summarizes the performance of campaigns, including total donations and donor count.",
        "rows": {
          "per": "campaigns",
          "via": "campaign_id",
          "min": 1,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each performance record."
          },
          "campaign_id": {
            "kind": "fk",
            "ref": "campaigns.id",
            "description": "Identifier for the campaign being analyzed."
          },
          "total_donations": {
            "kind": "decimal",
            "min": 1000,
            "max": 100000,
            "scale": 2,
            "description": "Total amount of donations received for the campaign.",
            "nullable": true,
            "distribution": "heavy-tail"
          },
          "donor_count": {
            "kind": "int",
            "min": 1,
            "max": 200,
            "description": "Total number of unique donors contributing to the campaign.",
            "nullable": true,
            "distribution": "long-tail"
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "monetary",
      "timestamped",
      "nullable"
    ],
    "analysisQuestions": [
      "Which campaigns received the highest total donations?",
      "How many unique donors contributed to each campaign?",
      "What rewards are most frequently claimed by donors?",
      "What is the average donation amount per donor?",
      "Which city has the most active donors?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Donations and Donors",
        "sql": "SELECT d.id, d.amount, don.full_name FROM donations d JOIN donors don ON d.donor_id = don.id;",
        "dialect": "postgres"
      },
      {
        "title": "Total Donations per Campaign",
        "sql": "SELECT c.name, SUM(d.amount) AS total_donations FROM campaigns c JOIN donations d ON c.id = d.campaign_id GROUP BY c.name;",
        "dialect": "postgres"
      },
      {
        "title": "Average Donation Amount by City",
        "sql": "SELECT don.city, AVG(d.amount) AS avg_donation FROM donations d JOIN donors don ON d.donor_id = don.id GROUP BY don.city;",
        "dialect": "postgres"
      },
      {
        "title": "Performance Summary of Campaigns",
        "sql": "SELECT c.name, cp.total_donations, cp.donor_count FROM campaigns c JOIN campaign_performance cp ON c.id = cp.campaign_id;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Nonprofit Fundraising Analysis",
        "body": "Development teams at nonprofits can utilize this dataset to analyze the effectiveness of their fundraising campaigns. By examining donor behavior and total contributions, they can identify trends and adjust their strategies to improve future campaigns."
      },
      {
        "title": "Reward Effectiveness Study",
        "body": "Research teams can leverage the rewards table to study which incentives lead to increased donations. By analyzing the correlation between donation amounts and claimed rewards, they can provide recommendations for future fundraising efforts."
      },
      {
        "title": "Donor Engagement Strategies",
        "body": "Marketing professionals can use this dataset to develop targeted engagement strategies for donors. By understanding which campaigns attract the most unique donors, they can tailor communication and outreach plans to foster long-term relationships."
      }
    ]
  },
  "counts": {
    "campaigns": 50,
    "campaign_performance": 109,
    "donors": 200,
    "donations": 1146,
    "rewards": 30
  },
  "stats": {
    "donors": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "full_name": {
          "nulls": 0,
          "distinct": 195,
          "min": "Alice Becker",
          "max": "Zoe Pereira"
        },
        "email": {
          "nulls": 0,
          "distinct": 199
        },
        "phone": {
          "nulls": 24,
          "distinct": 171
        },
        "city": {
          "nulls": 22,
          "distinct": 59,
          "min": "Amsterdam",
          "max": "Zurich"
        },
        "country": {
          "nulls": 13,
          "distinct": 41,
          "min": "Argentina",
          "max": "United States"
        }
      }
    },
    "campaigns": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "name": {
          "nulls": 0,
          "distinct": 49
        },
        "start_date": {
          "nulls": 0,
          "distinct": 47,
          "min": "2023-01-29",
          "max": "2023-12-30"
        },
        "end_date": {
          "nulls": 0,
          "distinct": 48,
          "min": "2023-01-27",
          "max": "2023-12-27"
        },
        "goal_amount": {
          "nulls": 2,
          "distinct": 48,
          "min": 1000.57,
          "max": 48082.68
        }
      }
    },
    "donations": {
      "rows": 1146,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 1146,
          "min": 1,
          "max": 1146
        },
        "donor_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "campaign_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "amount": {
          "nulls": 113,
          "distinct": 1032,
          "min": 10.01,
          "max": 9985.94
        },
        "donation_date": {
          "nulls": 0,
          "distinct": 1146,
          "min": "2023-01-01 08:24:27",
          "max": "2023-12-31 19:44:46"
        }
      }
    },
    "rewards": {
      "rows": 30,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        },
        "campaign_id": {
          "nulls": 0,
          "distinct": 25,
          "min": 2,
          "max": 49
        },
        "description": {
          "nulls": 4,
          "distinct": 26
        },
        "min_donation": {
          "nulls": 3,
          "distinct": 27,
          "min": 50.86,
          "max": 4198.55
        }
      }
    },
    "campaign_performance": {
      "rows": 109,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 109,
          "min": 1,
          "max": 109
        },
        "campaign_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "total_donations": {
          "nulls": 9,
          "distinct": 100,
          "min": 1000,
          "max": 97558.34
        },
        "donor_count": {
          "nulls": 9,
          "distinct": 75,
          "min": 1,
          "max": 196
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/campaigns.csv",
      "format": "csv",
      "table": "campaigns",
      "key": "datasets/charitable-contributions-dataset/v2/csv/campaigns.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/csv/campaigns.csv",
      "bytes": 4559,
      "sha256": "189facb80ef60d3b4d62a7d8341e5acba4595905e5d6d8d7247cb05a35e93c88",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/campaign_performance.csv",
      "format": "csv",
      "table": "campaign_performance",
      "key": "datasets/charitable-contributions-dataset/v2/csv/campaign_performance.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/csv/campaign_performance.csv",
      "bytes": 1988,
      "sha256": "4a13dd81bb14681a9f98d83ce8a94223aa36f53629608d06bd3f18cbe06e8152",
      "rows": 109,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/donors.csv",
      "format": "csv",
      "table": "donors",
      "key": "datasets/charitable-contributions-dataset/v2/csv/donors.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/csv/donors.csv",
      "bytes": 14059,
      "sha256": "1c5ce60b6ed0d1926e2b60be60e9058c23e19a387e90555b2997523be6ffed62",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/donations.csv",
      "format": "csv",
      "table": "donations",
      "key": "datasets/charitable-contributions-dataset/v2/csv/donations.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/csv/donations.csv",
      "bytes": 43823,
      "sha256": "209076231918925c41c7723b09c3588b455037499ae06ab1fac8c6f3dc0632b9",
      "rows": 1146,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/rewards.csv",
      "format": "csv",
      "table": "rewards",
      "key": "datasets/charitable-contributions-dataset/v2/csv/rewards.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/csv/rewards.csv",
      "bytes": 1855,
      "sha256": "6e2917f40cf086cb8163b9e631474fefcc46589e62d399e1042f92d042aa2692",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "charitable-contributions-dataset.json",
      "format": "json",
      "table": null,
      "key": "datasets/charitable-contributions-dataset/v2/charitable-contributions-dataset.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/charitable-contributions-dataset.json",
      "bytes": 232641,
      "sha256": "e0d1a74a0ea40cec65aadd880c3b658c5fb0f91efc03a3ff8dedd92faf6a02f3",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/charitable-contributions-dataset/v2/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/sql/postgres.sql",
      "bytes": 90082,
      "sha256": "735db41f212da8e131576d9de0b059cd068ee8ca99be11073e271f47257fd1c7",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/charitable-contributions-dataset/v2/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/sql/mysql.sql",
      "bytes": 89508,
      "sha256": "bd30bf57f7d4b4711a28e2410c1e36e17ff935e33d5d985f5e0b9c8906eb5d9d",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/charitable-contributions-dataset/v2/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/sql/mssql.sql",
      "bytes": 92122,
      "sha256": "397539091ad4e1434bb644e593c71a5a6314f0556f2ee9a56a0b4b423639241b",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/charitable-contributions-dataset/v2/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/sql/sqlite.sql",
      "bytes": 89302,
      "sha256": "2c7a35cda105f5968dd2edd40469b8b598f4e7849f4f12496580db0bedc67759",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/charitable-contributions-dataset/v2/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/prisma/seed.ts",
      "bytes": 193153,
      "sha256": "9c0a0318de18f2b933806f2918bbc07de7241c8d99d795bde728b956c209b37f",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/charitable-contributions-dataset/v2/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/charitable-contributions-dataset/v2/django/fixtures.json",
      "bytes": 298551,
      "sha256": "230e7c3b04837d5f538f4f866b94100696059ed9e1ed142f618dfeffc06bb7bc",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788766100187,
  "updatedAt": 1788777759494
}
