This project analyzes financial transaction data to identify fraud patterns, quantify the financial impact of fraudulent activity, and present actionable business insights through an executive dashboard.
The analysis combines Python for exploratory data analysis (EDA), SQL for business-oriented analytics, and Excel for dashboard development.
The project was designed as part of a junior data analytics portfolio with a focus on Financial Analytics and Fraud Analysis.
- Analyzed 6.3+ million financial transactions
- Built 8 business-focused SQL queries
- Created an executive Excel dashboard
- End-to-end workflow using Python, SQL and Excel
Financial institutions process millions of transactions every day. Detecting fraudulent activity quickly and understanding its financial impact are critical for reducing financial losses and improving operational decision-making.
This project investigates transaction behavior to answer key business questions such as:
- What percentage of transactions are fraudulent?
- Which transaction types present the highest fraud risk?
- What is the financial impact of fraudulent activity?
- How do fraudulent transactions differ from legitimate ones?
Dataset: PaySim Financial Dataset
The dataset contains simulated mobile money transactions including:
- Transaction type
- Transaction amount
- Account balances
- Fraud labels
Dataset size:
- 6,362,620 transactions
- Measure the overall fraud rate
- Identify high-risk transaction types
- Estimate the financial impact of fraud
- Compare fraudulent and legitimate transactions
- Present insights in an executive dashboard
| Tool | Purpose |
|---|---|
| Python | Data cleaning & EDA |
| Pandas | Data manipulation |
| Matplotlib | Data visualization |
| DuckDB SQL | Business analysis |
| Microsoft Excel | Executive dashboard |
Fraud_Analysis_Project/
├── Python_EDA/
│ └── Fraud_EDA.ipynb
│
├── SQL_Analysis/
│ ├── Fraud_SQL.ipynb
│ └── fraud_dashboard_export.xlsx
│
├── Excel_Dashboard/
│ └── Fraud_Dashboard.xlsx
│
├── images/
│ └── dashboard.png
│
└── README.md
The SQL analysis answers several business questions, including:
- Overall fraud rate
- Fraud rate by transaction type
- Total fraud amount by transaction type
- Top fraudulent transactions
- Daily fraud statistics
- Fraud vs. normal transaction comparison
- Fraud transfer flow analysis
- Destination account reuse investigation
The dashboard summarizes the analysis through:
- Total transaction volume
- Total transaction amount
- Fraud cases
- Total fraud amount
- Fraud amount (%)
- Fraud rate by transaction type
- Fraud amount by transaction type
- Fraud vs. normal transaction comparison
- Top fraudulent transactions
- Executive business insights
- Fraud is concentrated almost entirely in TRANSFER and CASH_OUT transactions.
- Fraudulent transactions exhibit significantly higher average transaction values than legitimate transactions.
- Fraud represents approximately 1.05% of the total transaction value.
- The largest fraudulent transactions reach the dataset's maximum transaction amount.
- Apply enhanced monitoring to TRANSFER and CASH_OUT transactions.
- Prioritize high-value transactions for fraud detection.
- Implement real-time alerts for suspicious transaction patterns.
- Monitor destination accounts that repeatedly appear in fraudulent activity.
- Open the Python notebook for EDA.
- Run the SQL notebook to generate the Excel export.
- Open the Excel dashboard.
- Refresh Pivot Tables if needed.
Portfolio project created for Data Analyst, Financial Analyst and Fraud Analyst roles.
