Financial Statement Fraud Indicators

This dataset simulates detailed financial statement records for public and private companies, enriched with fraud risk indicators and audit outcomes. It is designed for developing and benchmarking machine learning models to detect financial statement fraud, with comprehensive fields for financial metrics, suspicious activity counts, and risk scoring. The dataset is ideal for forensic analysis, risk assessment, and audit research in the finance industry.

  • opened 18 times
  • last updated 22 Jul 2025
  • by GoMask
The brief that made it

Training and evaluating machine learning models for financial statement fraud detection

Sample rows

preview · 8 of 200 rows · all 27 columns
record_idstringauditor_opinionstringfraud_risk_scorefloatfraud_flagbooleanindustry_sectorstringcompany_idstringcompany_namestringfiscal_yearintegerfiscal_periodstringstatement_datedatetotal_revenuefloatcost_of_goods_soldfloatgross_profitfloatoperating_expensesfloatnet_incomefloattotal_assetsfloattotal_liabilitiesfloattotal_equityfloatcash_and_equivalentsfloataccounts_receivablefloataccounts_payablefloatinventoryfloatsuspicious_transactions_countintegerunusual_journal_entries_countintegerlarge_adjustments_countintegercompany_typestringcountrystring
FS0001Unqualified0.06falseRetailC101Horizon Retail Ltd.2019FY2020-03-153845021.732667310.721177711.01436595.17741115.847689223.543821151.293868072.251252122.65678312.89597145.221104109.13000PrivateCanada
FS0002Qualified0.15falseBiotechnologyC102BlueSky Biotech PLC2020Q22020-07-202154800001368920007858800061270400173176002890000002601230002887700034500000175000001340000021000000110PublicUnited Kingdom
FS0003Qualified0.18falseMiningC103Atlas Mining Corp.2021Q12021-04-10120000150000-3000025000-55000400000515000-1150002200070004300017000011PrivateSouth Africa
FS0004Unqualified0.1falseFood ProcessingC104Green Valley Foods LLC2022Q32022-10-0214500000102200004280000257000017100002390000013600000103000002280000167000014500002100000100PublicAustralia
FS0005Unqualified0.21falseTechnologyC105FirstWave Technologies Inc.2018FY2019-02-289600000065800000302000002200000082000001140000005540000058600000132000006700000860000010500000210PublicUnited States
FS0006Unqualified0.03falseHospitalityC106Sunset Hospitality Group2021Q22021-07-104500000306000014400009320005080008200000294000052600001020000420000380000900000000PrivateSingapore
FS0007Qualified0.17falseTextilesC107NextGen Apparel PLC2020Q42021-01-1415000001650000-150000175000-325000780000890000-110000530002900013000070000101PublicBangladesh
FS0008Qualified0.23falseFinancial ServicesC108Equinox Financial Group2021FY2022-02-28430000000289100000140900000987800004212000067000000053600000013400000043500000354000002200000015000000321PublicGermany

What the 200 rows show

from the 200-row sample

Not Available (auditor opinion) stands out: mean fraud_risk_score is 0.03, against 0.15 for the rest.

  • 2%fraud_flag = true
  • 0.12median fraud_risk_score
  • 2company types
  • 5fiscal periods
  • 48countries
  • 3,650,000median total_revenue
Mean fraud_risk_score by auditor_opinion200 rows
00.510.10Unqual…104 rows0.18Qualif…66 rows0.96Adverse2 rows0.97Discla…1 rows0.03Not Av…27 rows
fraud_risk_score200 rows, in bands of 0.1
045908386280000003fraud_flag from 0.900.50.9fraud_risk_score →

Every row with fraud_risk_score of 0.9 or more has fraud_flag = true. None below it.

industry_sector200 rows · top 10 of 21 values
  1. Manufacturing17
  2. Agriculture16
  3. Food Processing14
  4. Technology14
  5. Hospitality14
  6. Textiles14
  7. Real Estate14
  8. Mining13
  9. Healthcare12
  10. Retail11
27 columns by typefrom the column list below
  • string 8
  • integer 4
  • float 13
  • date 1
  • boolean 1

Columns

27 columns in four groups
blueprint · 27 columns
columntypedescriptionexample
Text 8 columns
record_idstringUnique identifier for each financial statement record.uniqueFS0001
company_idstringUnique identifier for the company.C101
company_namestringLegal name of the company.Horizon Retail Ltd.
fiscal_periodstringFiscal period covered (e.g., Q1, Q2, Q3, Q4, FY).Q1 · Q2 · Q3 · Q4 · FYFY
auditor_opinionstringType of auditor's opinion issued for the statement.5 values · optionalUnqualified
company_typestringType of company: public or private.Public · PrivatePrivate
industry_sectorstringIndustry sector of the company.optionalRetail
countrystringCountry where the company is registered.optionalCanada
Numbers 17 columns
fiscal_yearintegerFiscal year of the financial statement.1,900 to 2,1002019
total_revenuefloatTotal revenue reported for the period.0 or more3845021.73
cost_of_goods_soldfloatCost of goods sold for the period.0 or more2667310.72
gross_profitfloatGross profit for the period.1177711.01
operating_expensesfloatTotal operating expenses for the period.0 or more436595.17
net_incomefloatNet income (profit or loss) for the period.741115.84
total_assetsfloatTotal assets reported at the end of the period.0 or more7689223.54
total_liabilitiesfloatTotal liabilities reported at the end of the period.0 or more3821151.29
total_equityfloatTotal shareholders' equity at the end of the period.3868072.25
cash_and_equivalentsfloatCash and cash equivalents at the end of the period.0 or more1252122.65
accounts_receivablefloatAccounts receivable at the end of the period.0 or more678312.89
accounts_payablefloatAccounts payable at the end of the period.0 or more597145.22
inventoryfloatInventory value at the end of the period.0 or more1104109.13
suspicious_transactions_countintegerNumber of transactions flagged as suspicious in the period.0 or more · optional0
unusual_journal_entries_countintegerNumber of unusual journal entries detected in the period.0 or more · optional0
large_adjustments_countintegerNumber of large, non-routine adjustments made during the period.0 or more · optional0
fraud_risk_scorefloatCalculated risk score (0-1) indicating likelihood of financial statement fraud.0 to 1 · optional0.06
Dates and times 1 column
statement_datedateDate the financial statement was issued.2020-03-15
True or false 1 column
fraud_flagbooleanIndicates if this record is labeled as fraudulent (true) or not (false).optionalfalse

15 SQL practice questions for the Financial Statement Fraud Indicators

Written for this data and checked against it: 12 SQL and 3 Power BI exercises from beginner to advanced. Try the first three free; the practice kit has all 15, a starter .sql file and an answer key with every expected result.

  1. 01BeginnerFreeSELECT · WHERE · ORDER BY

    High-risk statements list

    Return record_id, company_name, fiscal_year and fraud_risk_score for every statement whose fraud_risk_score is greater than 0.7. Order the results by fraud_risk_score from highest to lowest, then by record_id ascending.

    Tables: financial_statement_fraud_indicators · your result: 4 columns, 3 rows
  2. 02BeginnerFreeDISTINCT · ORDER BY

    Distinct auditor opinions

    Return the distinct values of auditor_opinion as a single column named auditor_opinion, sorted alphabetically.

    Tables: financial_statement_fraud_indicators · your result: 1 columns, 5 rows
  3. 03BeginnerFreeGROUP BY · COUNT

    Statements per company type

    Return company_type and the number of statements for each type as statement_count. Order the results by company_type.

    Tables: financial_statement_fraud_indicators · your result: 2 columns, 2 rows
  1. 04Average net income by sectorBeginner
  2. 05Flagged statements by opinionPower BI
  3. 06Sectors with many flagged statementsIntermediate
  4. 07Leverage bucketsIntermediate
  5. 08Sectors riskier than overallIntermediate
  6. 09Statements per year with a CTEIntermediate
  7. 10Average risk by countryPower BI
  8. 11Top risk statement per sectorAdvanced
  9. 12Revenue spikes vs previous statementAdvanced
  10. 13Running flagged total by yearAdvanced
  11. 14Country share of total revenueAdvanced
  12. 15Top three risk ranksPower BI

Get the practice kit: the full dataset, all 15 exercises, a starter .sql and the answer key. One-time $3.99.

Get the practice kit · $3.99

Use it for

  • fraud flag2%3 of 200 rowsmean fraud risk score…0.10Unqu…0.18Qual…0.96Adve…0.97Disc…

    A finance dashboard

    The fraud_flag rate, fraud_risk_score by auditor_opinion and a breakdown of industry_sector. Excel, Power BI or Tableau.

  • Why do the 27 Not Available rows have a mean fraud_risk_score of 0.03?

    A root-cause class exercise

    Hand out the rows and one question. The answer is in the data, not in the brief.

  • A software demo

    Believable records with company_id, company_name and fiscal_year to fill a screen in front of a buyer.

Not quite right?

Make it yours.

Same 27 columns, your size and your rules. See 20 rows before you pay.

Preview 20 rows free

1,000 rows: $1.99 · 10,000: $12.99One-time. No subscription. All prices

This dataset200 rows27 columns
Yours1,000 rows27 columnscountry: UK only

blueprint · financial-statement-fraud-indicators

Behind this dataset

Same schema. As many rows as you need.

These 200 rows came out of a blueprint — 27 columns with generation rules behind each one. Open it in Data Factory to retune a column, add your own, wire in foreign keys, and run it at the size you actually need.

Rules it was built with
  • Includes balance sheet, income and cash flow figures
  • Flag columns for suspected fraudulent entries
  • Incorporates industry benchmarks for realism
  • Anomalies follow realistic fraud scenarios
Rows
Open the blueprint in Data Factory

1 credit per row. Preview 20 rows free. Buy rows for the full run.

Exports
CSV, JSON, JSONL, Parquet, SQL, Excel, TSV, XML
Licence
yours to use, including commercially
API slug
financial-statement-fraud-indicators

What should your data show?

Preview 20 rows free
No signup. No card.