Download realistic mock datasets and complete these exercises to build your portfolio. All data is entirely fictional and safe to use publicly.
If you don't have time to scrub sensitive information from your actual work files—or you simply can't share them due to confidentiality agreements—these practice prompts provide pre-generated clean datasets you can use instead. Download the CSV files, complete the exercise in Excel/Python/SQL, and upload your solution to your portfolio.
A high-volume e-commerce client has a mismatch between their Shopify payout report and their Chase bank statement.
Two CSVs: One with 500 bank transactions, one with 510 internal ledger entries (including 10 duplicates/missing entries).
Upload a reconciliation template that identifies the specific 'reconciling items' and provides the adjusting journal entry.
A manufacturing firm has acquired 15 new pieces of equipment mid-year with different depreciation lives.
A 'Beginning Balance' list and an 'Additions/Disposals' log with dates, costs, and asset classes.
Create a dynamic Roll-Forward schedule in Excel that calculates YTD Depreciation and Ending Net Book Value.
A Series B Fintech startup needs to see if they are 'healthy' according to the Rule of 40.
24 months of P&L data (Revenue, OPEX, Net Income).
A visualization (Excel or BI) showing Revenue Growth % + Profit Margin % over time, highlighting where they hit or miss the '40' mark.
A global company has 5 subsidiaries charging each other 'Management Fees' that must be eliminated at the TopCo level.
A combined Trial Balance with 5,000 rows, including 'Due To/From' accounts with differing entity codes.
A .py script that identifies matching intercompany pairs and generates a 'Clean' Consolidated TB.
A 'Buy Now, Pay Later' (BNPL) firm wants to see the impact of a 2% rise in default rates.
A portfolio of 1,000 active loans with balances, interest rates, and current 'Days Past Due' (DPD).
A sensitivity analysis showing the impact on Net Interest Margin (NIM) and Cash Flow.
An AP department has 'Apple Inc,' 'Apple,' and 'Apple, Inc.' in their system, causing double payments.
A vendor list of 2,000 names with addresses and tax IDs.
Use Fuzzy Lookup (Excel) or a Python script to deduplicate the list and identify potential overpayments.
Some users are getting 'Premium' features without a 'Paid' subscription status in the billing table.
Two tables: User_Activity (Feature logs) and Subscriptions (Payment status).
A SQL query that joins these tables to find 'Feature Use' where Payment_Status != 'Active'.
Once you've completed an exercise, head to your Portfolio page to upload your solution.