{
  "format": "dataset-manifest/1",
  "slug": "personal-finance-management-dataset",
  "version": 1,
  "seed": "personal-finance-management-dataset:1",
  "spec": {
    "format": "dataset/1",
    "slug": "personal-finance-management-dataset",
    "name": "Personal Finance Management Dataset",
    "tagline": "Users, transactions, financial goals, investments, and feedback from a personal finance management platform.",
    "description": "Users input their financial data to track spending, savings, and investments in a streamlined service dedicated to personal finance management. They log transactions from various sources such as credit cards and personal loans while setting specific financial goals to achieve their objectives. As users engage with the platform, they can provide feedback about their experiences, contributing to the continuous improvement of the service. Understanding user behavior and preferences helps the business tailor its offerings to better meet individual financial needs.\n\nThe dataset consists of several interconnected tables. The 'users' table holds information about each individual using the platform, including their unique identifiers, demographics, and the date they joined. The 'transactions' table records each user's financial activities, where each row corresponds to a specific transaction tied to a user via a foreign key. The 'financial_goals' table outlines the different objectives users set, such as saving for a vacation or paying off debt, with each goal linked to the respective user. The 'investments' table captures data on various investment strategies users pursue, including stocks or bonds, associating each investment back to the individual user as well. Finally, the 'user_feedback' table compiles insights and reviews provided by users regarding their experience, closing the loop on the user journey by allowing the business to adapt based on this feedback.\n\nThis dataset is ideal for practicing data analysis techniques, as it enables users to explore key questions such as how different variables influence financial success, which spending habits correlate with achieving financial goals, and how user feedback impacts service improvements. Additionally, analysts can investigate trends in user behavior over time or assess the effectiveness of various investment strategies. The synthetic nature of this data allows for experimentation without risking real user information, making it a safe learning environment.",
    "domain": "saas",
    "shape": "ledger",
    "useCases": [
      "sql-practice",
      "teaching"
    ],
    "keywords": [
      "personal finance",
      "financial goals",
      "transactions",
      "budgeting",
      "investments",
      "user feedback"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "This table contains information about users of the finance management platform. Each row represents a unique user with relevant details for identification and contact.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user."
          },
          "full_name": {
            "kind": "fullName",
            "description": "The full name of the user."
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "The user's email address."
          },
          "created_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date and time the user created their account.",
            "dayProfile": "business"
          }
        }
      },
      "transactions": {
        "description": "This table captures financial transactions made by users, including expenses and income. Each transaction is linked to a user and can be categorized as either an expense or income.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 15,
          "skew": "heavy-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each transaction."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "Reference to the user who made the transaction."
          },
          "amount": {
            "kind": "decimal",
            "min": 1,
            "max": 10000,
            "scale": 2,
            "description": "The amount of money associated with the transaction."
          },
          "transaction_date": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date when the transaction occurred.",
            "dayProfile": "waking",
            "trend": "growing"
          },
          "category": {
            "kind": "enum",
            "values": [
              "expense",
              "income"
            ],
            "description": "The type of transaction, indicating if it's an expense or income."
          },
          "note": {
            "kind": "words",
            "max": 50,
            "description": "Optional note providing additional details about the transaction.",
            "nullable": true,
            "when": {
              "column": "category",
              "in": [
                "expense"
              ]
            }
          }
        }
      },
      "financial_goals": {
        "description": "This table tracks financial goals set by users, outlining their objectives and progress. Each goal is linked to a specific user.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each financial goal."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "Reference to the user who set the goal."
          },
          "goal_name": {
            "kind": "words",
            "max": 30,
            "description": "The name of the financial goal.",
            "nullable": true
          },
          "target_amount": {
            "kind": "decimal",
            "min": 100,
            "max": 50000,
            "scale": 2,
            "description": "The target amount for the financial goal.",
            "nullable": true
          },
          "current_amount": {
            "kind": "decimal",
            "min": 0,
            "max": 50000,
            "scale": 2,
            "description": "The amount currently saved towards the goal.",
            "nullable": true
          },
          "due_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2025-12-31",
            "description": "The date by which the goal should be achieved.",
            "nullable": true
          }
        }
      },
      "investments": {
        "description": "This table captures investment details for users, including types of investments, amounts, and returns. Each investment is linked to a user.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 0,
          "max": 10,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each investment."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "Reference to the user who made the investment."
          },
          "investment_type": {
            "kind": "enum",
            "values": [
              "stocks",
              "bonds",
              "real estate",
              "mutual funds"
            ],
            "description": "The type of investment made by the user."
          },
          "amount_invested": {
            "kind": "decimal",
            "min": 100,
            "max": 100000,
            "scale": 2,
            "description": "The amount invested by the user.",
            "nullable": true,
            "when": {
              "column": "investment_type",
              "in": [
                "stocks",
                "bonds",
                "real estate",
                "mutual funds"
              ]
            }
          },
          "investment_date": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date when the investment was made.",
            "nullable": true,
            "when": {
              "column": "investment_type",
              "in": [
                "stocks",
                "bonds",
                "real estate",
                "mutual funds"
              ]
            },
            "dayProfile": "business"
          },
          "expected_return": {
            "kind": "decimal",
            "min": 0,
            "max": 50000,
            "scale": 2,
            "description": "The expected return from the investment.",
            "nullable": true
          }
        }
      },
      "user_feedback": {
        "description": "This table collects feedback from users regarding their experience with the platform. It captures their satisfaction and suggestions for improvement.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 0,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each feedback entry."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "Reference to the user providing feedback."
          },
          "satisfaction_rating": {
            "kind": "int",
            "min": 1,
            "max": 5,
            "description": "User's satisfaction rating of the platform."
          },
          "feedback_date": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date when the feedback was provided.",
            "dayProfile": "waking"
          },
          "comments": {
            "kind": "sentence",
            "max": 200,
            "description": "User's comments or suggestions regarding the platform.",
            "nullable": true
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "nullable",
      "timestamped",
      "monetary"
    ],
    "analysisQuestions": [
      "What are the most common types of financial goals users set?",
      "How do users' spending habits change over time?",
      "Which investment types yield the highest returns for users?",
      "What is the average user satisfaction rating of the platform?",
      "How much progress do users typically make towards their financial goals?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Users and Transactions",
        "sql": "SELECT users.full_name, transactions.amount FROM users JOIN transactions ON users.id = transactions.user_id;",
        "dialect": "postgres"
      },
      {
        "title": "Calculate Total Expenses per User",
        "sql": "SELECT user_id, SUM(amount) AS total_expenses FROM transactions WHERE category = 'expense' GROUP BY user_id;",
        "dialect": "postgres"
      },
      {
        "title": "Average Satisfaction Rating",
        "sql": "SELECT AVG(satisfaction_rating) AS average_rating FROM user_feedback;",
        "dialect": "postgres"
      },
      {
        "title": "Investment Returns by Type",
        "sql": "SELECT investment_type, AVG(expected_return) AS average_return FROM investments GROUP BY investment_type;",
        "dialect": "postgres"
      },
      {
        "title": "Financial Goals Progress",
        "sql": "SELECT user_id, AVG(current_amount / target_amount) AS progress_ratio FROM financial_goals GROUP BY user_id;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Financial Advisor Training",
        "body": "Financial advisors can use this dataset to understand common financial goals and spending behaviors of individuals. By analyzing the data, they can tailor their advice and strategies to help clients achieve their financial objectives."
      },
      {
        "title": "Personal Finance Course",
        "body": "Instructors teaching personal finance courses can utilize this dataset to provide hands-on experience with real-world financial management scenarios. Students can practice SQL queries to extract insights and learn about budgeting, investing, and goal setting."
      },
      {
        "title": "Data Analysis Projects",
        "body": "Students and professionals in data analysis can leverage this dataset for projects focused on personal finance. They can explore trends in user spending, investment strategies, and feedback to derive actionable insights for financial planning."
      },
      {
        "title": "User Experience Research",
        "body": "User experience researchers can analyze the feedback data to identify areas of improvement for the finance management platform. By understanding user satisfaction and common suggestions, they can enhance the overall user experience."
      }
    ]
  },
  "counts": {
    "users": 200,
    "financial_goals": 458,
    "investments": 637,
    "transactions": 845,
    "user_feedback": 336
  },
  "stats": {
    "users": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "full_name": {
          "nulls": 0,
          "distinct": 197,
          "min": "Alice Johnson",
          "max": "Zoe Meyer"
        },
        "email": {
          "nulls": 0,
          "distinct": 199
        },
        "created_at": {
          "nulls": 0,
          "distinct": 200,
          "min": "2020-01-03 20:39:13",
          "max": "2023-12-30 14:48:58"
        }
      }
    },
    "transactions": {
      "rows": 845,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 845,
          "min": 1,
          "max": 845
        },
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "amount": {
          "nulls": 0,
          "distinct": 845,
          "min": 22.43,
          "max": 9992.29
        },
        "transaction_date": {
          "nulls": 0,
          "distinct": 845,
          "min": "2020-01-02 15:56:54",
          "max": "2023-12-31 20:39:36"
        },
        "category": {
          "nulls": 0,
          "distinct": 2,
          "min": "expense",
          "max": "income"
        },
        "note": {
          "nulls": 441,
          "distinct": 404
        }
      }
    },
    "financial_goals": {
      "rows": 458,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 458,
          "min": 1,
          "max": 458
        },
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "goal_name": {
          "nulls": 40,
          "distinct": 418
        },
        "target_amount": {
          "nulls": 26,
          "distinct": 432,
          "min": 173.41,
          "max": 49911.67
        },
        "current_amount": {
          "nulls": 49,
          "distinct": 409,
          "min": 168.38,
          "max": 49930.14
        },
        "due_date": {
          "nulls": 47,
          "distinct": 344,
          "min": "2023-01-03",
          "max": "2025-12-31"
        }
      }
    },
    "investments": {
      "rows": 637,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 637,
          "min": 1,
          "max": 637
        },
        "user_id": {
          "nulls": 0,
          "distinct": 139,
          "min": 2,
          "max": 200
        },
        "investment_type": {
          "nulls": 0,
          "distinct": 4,
          "min": "bonds",
          "max": "stocks"
        },
        "amount_invested": {
          "nulls": 0,
          "distinct": 637,
          "min": 127.91,
          "max": 99671.95
        },
        "investment_date": {
          "nulls": 0,
          "distinct": 637,
          "min": "2020-01-01 12:26:32",
          "max": "2023-12-27 13:41:44"
        },
        "expected_return": {
          "nulls": 79,
          "distinct": 558,
          "min": 37.44,
          "max": 49983.26
        }
      }
    },
    "user_feedback": {
      "rows": 336,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 336,
          "min": 1,
          "max": 336
        },
        "user_id": {
          "nulls": 0,
          "distinct": 120,
          "min": 2,
          "max": 199
        },
        "satisfaction_rating": {
          "nulls": 0,
          "distinct": 5,
          "min": 1,
          "max": 5
        },
        "feedback_date": {
          "nulls": 0,
          "distinct": 336,
          "min": "2020-01-06 18:49:03",
          "max": "2023-12-20 19:30:15"
        },
        "comments": {
          "nulls": 32,
          "distinct": 303
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/personal-finance-management-dataset/v1/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/csv/users.csv",
      "bytes": 12101,
      "sha256": "21a4e73faf3649bf92bd6589b1e52a1556f1ad64ffb3b4a203d9fd3501d6f4d8",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/financial_goals.csv",
      "format": "csv",
      "table": "financial_goals",
      "key": "datasets/personal-finance-management-dataset/v1/csv/financial_goals.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/csv/financial_goals.csv",
      "bytes": 61187,
      "sha256": "eaae54502c848d68d4ab21515546de6e5adb6fe296bc11f7624ff9691326a437",
      "rows": 458,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/investments.csv",
      "format": "csv",
      "table": "investments",
      "key": "datasets/personal-finance-management-dataset/v1/csv/investments.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/csv/investments.csv",
      "bytes": 34862,
      "sha256": "acf24789122296c321a38a1f49a77e560a9676f487ab99f34a13999b2784dfa8",
      "rows": 637,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/transactions.csv",
      "format": "csv",
      "table": "transactions",
      "key": "datasets/personal-finance-management-dataset/v1/csv/transactions.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/csv/transactions.csv",
      "bytes": 102545,
      "sha256": "cbca2ff0a7eebc4059e8e77ddf0eb5121a350a6ac81a9e5617b46f59bdd86f01",
      "rows": 845,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/user_feedback.csv",
      "format": "csv",
      "table": "user_feedback",
      "key": "datasets/personal-finance-management-dataset/v1/csv/user_feedback.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/csv/user_feedback.csv",
      "bytes": 27465,
      "sha256": "53ab5b7f99d92a7dee37d6ce1858066918c140a06abfe68fd95ae1a2a977d4f8",
      "rows": 336,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "personal-finance-management-dataset.json",
      "format": "json",
      "table": null,
      "key": "datasets/personal-finance-management-dataset/v1/personal-finance-management-dataset.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/personal-finance-management-dataset.json",
      "bytes": 560063,
      "sha256": "236fd06819a5d76c2e0ca29981cc91b969f6e6eb58cd7f696be3a5a66a29b8fd",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/personal-finance-management-dataset/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/sql/postgres.sql",
      "bytes": 282196,
      "sha256": "0c5c1512609ff27bdc000037a3906c807148a89b91042e781eed11aeb55ce555",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/personal-finance-management-dataset/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/sql/mysql.sql",
      "bytes": 281609,
      "sha256": "ad7df263011658bac357f8b4555b16c3d318bbfc9a1b14e34fa7d399a24fc937",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/personal-finance-management-dataset/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/sql/mssql.sql",
      "bytes": 287402,
      "sha256": "6306257c4fdb66ed76f75c763342308f6ee2e3f7fc5796107f0a419c8f6508e5",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/personal-finance-management-dataset/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/sql/sqlite.sql",
      "bytes": 281384,
      "sha256": "aa60b0128bf43abb6bdc64ac50104ac22cab6de4a3e89d6cffad9eb19371d009",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/personal-finance-management-dataset/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/prisma/seed.ts",
      "bytes": 486408,
      "sha256": "5c65d73793134c9a7d3b597e7ad189e21b73897fe89a217eb1b5ef50ab523be1",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/personal-finance-management-dataset/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/personal-finance-management-dataset/v1/django/fixtures.json",
      "bytes": 679296,
      "sha256": "14ee0455855ff2c72ed681fd0c0827db191e83712a913b6e8972c7b0898fd13e",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788733987207,
  "updatedAt": 1788733987207
}
