CharityVerify analyzes 15 years of CRA filings, director networks, and financial patterns to produce transparent, data-driven trust assessments for 138,000+ Canadian charities. This page documents exactly how scores are calculated.
Every charity is assessed across three independent domains. Each measures a different dimension of trustworthiness. The three domain scores combine into a single Trust Grade from A+ to F.
Measures whether a charity is who it claims to be. Evaluates regulatory standing, organizational stability, board governance quality, and director track records across the charity sector.
Measures financial sustainability and stewardship. Compares revenue trends, reserves, fundraising costs, compensation, and donation flows against peer benchmarks within the same category, revenue band, and asset-intensity cohort. Uses dynamic component weighting — components with no data carry zero weight and remaining weights are redistributed proportionally.
Measures adherence to regulatory standards and absence of risk signals. A score near 0 means no concerns were detected. The score increases when risk signals such as jurisdiction exposure, anomalous flows, or sanctions proximity are found. When calculating the composite grade, this score is inverted: (100 − score).
The three domain scores combine into a single composite number, which then maps to a letter grade. The Governance & Reporting score is inverted because a lower value means fewer concerns.
The composite alone does not determine the grade. Each grade also requires minimum thresholds in every domain, preventing a charity from earning a high grade by excelling in one area while failing in another. Additionally, grades are subject to confidence caps based on how much real data is available.
| Grade | Composite | Trust | Financial Health | Governance | Confidence Req. |
|---|---|---|---|---|---|
| A+ | ≥ 92 | ≥ 80 | ≥ 80 | ≤ 20 | ≥ 5 real financial components |
| A | ≥ 82 | ≥ 70 | ≥ 70 | ≤ 30 | ≥ 3 real financial components |
| B | ≥ 68 | ≥ 55 | ≥ 55 | ≤ 45 | No minimum |
| C | ≥ 55 | ≥ 40 | ≥ 40 | ≤ 60 | No minimum |
| D | Does not meet C criteria and does not trigger F | No minimum | |||
| F | < 35 | OR < 20 | OR < 20 | OR > 80 | No minimum |
| NR | More than 4 components missing data in any single domain | ||||
If a charity's Financial Health score is based on fewer than 5 components with real data (the remaining used default or not-applicable values), the maximum achievable grade is capped:
This prevents charities with very thin data from receiving top grades on limited evidence. A single-component charity is further hard-capped at a Financial Health score of 70 before the grade is computed.
The Financial Health domain uses dynamic component weighting. When a component has no data (no filings, no compensation records, etc.) or is not applicable (e.g., no international activity), it is removed from the weighted average entirely. The weights of the remaining components are redistributed proportionally so they still sum to 100%.
When only a single component has real data, the Financial Health score is capped at 70 regardless of that component's value. A high-confidence assessment requires multiple data points.
Several Financial Health components compare a charity's metrics against its peers. Charities are grouped by three dimensions to ensure fair comparisons:
| Revenue Band | Annual Revenue |
|---|---|
| Micro | < $100K |
| Small | $100K – $500K |
| Medium | $500K – $2M |
| Large | $2M – $10M |
| Major | > $10M |
| Asset Intensity | Asset-to-Revenue Ratio | Typical Profile |
|---|---|---|
| Light | < 1.0x | Renters, service orgs, event-driven |
| Moderate | 1.0x – 5.0x | Mixed, some property |
| Heavy | > 5.0x | Building owners, endowed foundations |
CRA assigns each charity a category code (e.g., health, education, religion, social services). Benchmarks are computed per category so that hospitals are compared to hospitals and churches to churches.
Within each peer group, we compute five percentile boundaries: p10, p25, p50, p75, and p90. A charity's metric is scored using linear interpolation between adjacent boundaries, not discrete buckets. This produces smooth, continuous scores rather than artificial jumps at percentile boundaries.
For metrics where higher is better (e.g., program spending ratio):
| Metric Position | Score Range |
|---|---|
| At or above p75 | 100 |
| Between p50 and p75 | 80 → 100 (interpolated) |
| Between p25 and p50 | 55 → 80 (interpolated) |
| Between p10 and p25 | 10 → 55 (interpolated) |
| Below p10 | 10 |
For metrics where lower is better (e.g., fundraising cost ratio), the scale is reversed: at or below p25 scores 100, and above p90 scores 5.
If a charity's specific peer group (category + revenue band + asset intensity) has too few members, the system falls back through progressively broader groups:
A benchmark is only used if it has at least 10 charities in the sample and passes quality checks (see below).
A benchmark is marked degenerate and skipped when any of the following conditions are true:
When a benchmark is degenerate at all three fallback levels, the component falls back to absolute scoring thresholds.
The most heavily weighted trust signal. CRA registration status maps directly to a score:
| Status | Score |
|---|---|
| Registered | 100 |
| Unknown status text | 70 |
| Penalized / Suspended | 30 |
| No status data | 25 |
| Cancelled | 10 |
| Revoked / Annulled | 0 |
Evaluates board governance quality through two sub-metrics: board size and year-over-year turnover.
Cross-references each director against every other charity they serve on. If a director sits on boards of charities that have been revoked, annulled, or cancelled, the contagion score drops — because patterns of governance failure tend to follow individuals across organizations.
Directors serving on 5+ boards are flagged as "power directors" (informational).
How long a charity has been registered with CRA. For active charities, calculated from the registration date. For revoked/annulled charities, estimated from the span of their filing history.
| Years Active | Score |
|---|---|
| 20+ | 100 |
| 10–19 | 80 |
| 5–9 | 60 |
| 2–4 | 40 |
| < 2 | 20 (informational "new charity" flag) |
Political spending as a percentage of total expenditures. Canadian charities are permitted limited political activity, but high ratios reduce the score:
| Political Ratio | Score |
|---|---|
| 0% | 100 |
| < 5% | 90 |
| 5–10% | 70 |
| 10–15% | 50 (warning) |
| 15–20% | 30 (warning) |
| > 20% | 10 (critical) |
Checks how many of the expected annual T3010 filings exist within the reliable coverage window (2014–2023). Weight reduced to 5% because CRA bulk data before 2014 has known gaps that do not reflect charity behavior.
Active charities missing filings for both 2022 and 2023 receive a "no recent filing" critical flag and are capped at 30.
Assessed using compound annual growth rate (CAGR) and year-over-year volatility (standard deviation of annual percentage changes), with size-aware thresholds. Micro charities (<$100K) naturally have higher percentage swings; their volatility thresholds are wider than those for large charities.
| Revenue Band | "Stable" Volatility | "Moderate" Volatility |
|---|---|---|
| Micro (<$100K) | < 25% | < 50% |
| Small ($100K–$500K) | < 20% | < 40% |
| Medium and above | < 15% | < 30% |
The base score is determined by growth direction and volatility, then blended 70/30 with the peer benchmark score for revenue CAGR (when available). Revenue cliffs (>50% single-year drops) cap the score, with graduated penalties for recent drops (last 4 years) versus historical drops.
[+] Technical detail: Revenue Trend scoringBase scores: Growing + stable = 100. Growing + moderate volatility = 80. Stagnant (CAGR near 0) = 65. Growing + high volatility = 65 (at least as good as stagnant). Declining + moderate volatility = 40. Declining + high volatility = 20.
Cliff penalties (recent, last 4 year-pairs): >90% drop caps at 10. >75% drop caps at 15. >50% drop caps at 30. Historical cliffs (>5 years ago) cap at 40 with an informational flag.
Peer blend: final = base × 0.70 + peer_benchmark_score × 0.30
Deduplication: Consecutive years with identical revenue (CRA data artifacts) are deduplicated before computing CAGR and volatility.
Net assets (total assets minus total liabilities) expressed as months of operating expenses, compared against peer benchmarks within the same asset-intensity cohort. This is bimodal: both too-low and too-high reserves are penalized, because hoarding reduces a charity's charitable impact just as fragile reserves threaten its survival.
[+] Technical detail: Reserve scoring methodologyAbsolute fallback thresholds (used when no benchmark available):
| Reserve Months | Score |
|---|---|
| 3–12 months | 100 |
| 12–24 months | 80 |
| >48 months (no benchmark) | 75 (neutral — can't prove hoarding without peer context) |
| 1–3 months | 60 |
| 24–48 months | 55 |
| <1 month | 20 |
| Negative (insolvent) | 10 |
Benchmark-relative scoring: Within the peer group's interquartile range (p25–p75), reserves score 100. Below p25, scores interpolate down to 60 at p10. Above p75, scores interpolate down to 50 at p90. Floor of 60 below p10; floor of 50 above p90.
Smooth ramp: Between 2 and 4 months of reserves, the score is a linear blend of the absolute fallback and the benchmark-relative score: blend = (months − 2) / 2. Below 2 months, only absolute scoring applies. At 4+ months, only benchmark scoring applies.
The percentage of total expenditures going to charitable programs, averaged over the most recent 3 years with valid data. Weight set at 15% because sector consensus since 2013 rejects overhead ratios as primary quality indicators.
For charities below 70% program spending, the score blends two benchmark comparisons:
score = ops_benchmark_score × (1 − pass_through_ratio) + all_benchmark_score × pass_through_ratio
This ensures grantmaking organizations (high pass-through) are compared against the full population, while operational charities are compared against other operational charities. Years with missing spending breakdowns or total expenditures below 50% of line-item sums are excluded from averaging. CRA form recoding years (2018–2021) are detected via >20pp admin/program shifts and excluded.
Fundraising costs as a percentage of total revenue, compared against peer benchmarks (lower is better). Charities that report total expenditures but no fundraising line-item are treated as $0 fundraising cost, since the absence of a fundraising line in CRA filings almost always means no professional fundraising operation exists.
Two sub-metrics averaged together:
Charities with financial filings but no compensation records are treated as all-volunteer organizations and receive full credit (100) rather than a data-gap penalty.
Analyzes charity-to-charity donation flows. Only transfers to unregistered recipients drive score penalties — transfers to registered charities are legitimate grantmaking.
For charities with international activities: scored based on whether program descriptions are filed alongside international spending. Charities with no international activity receive full credit (not applicable).
This domain uses an additive risk model. Each component starts at 0 (no risk detected) and increases when risk signals are found. The domain total is a weighted sum of component risk scores.
Checks international activities against FATF greylist and blacklist jurisdictions. Operating in a blacklisted jurisdiction with >50% of international spend triggers a score of 85+. Each greylist country adds 5 points (base 25). Conflict zone presence is tracked as an informational signal only — humanitarian organizations exist to operate in conflict zones.
Detects suspicious flow patterns across three sub-dimensions:
Detects spending pattern deviations from established mission. High international spending only triggers a penalty if it is new (one year or less of international history). Established international organizations with 2+ years of cross-border work receive an informational note, not a penalty. Administrative spending exceeding program spending always triggers a flag (40 points). Missing program descriptions add a small informational signal (15 points).
Flags sudden anomalies in the most recent year-over-year comparison:
CRA form recoding years (2018–2021) are detected when admin or program ratios jump >20 percentage points, and those year-pairs are suppressed to avoid false flags. Years with zero expenditures or missing spending breakdowns are excluded as baselines.
Non-qualified donee grant spending as a proportion of total expenditures. >50% = 70 points. 25–50% = 45 points. 10–25% = 25 points. <10% = 10 points. Zero NQD grants = 0 points.
Cross-references charity and director names against international sanctions lists. Currently scored as an informational reference; active scoring is planned for a future version once name-matching precision is validated.
Private foundations receive a baseline risk score of 15, reflecting their higher regulatory scrutiny requirements. Additional penalties apply when private foundations show patterns consistent with tax shelter abuse: high compensation combined with low program spending can push this component to 65 points.
The scoring system includes several accommodations to avoid penalizing legitimate organizational structures:
Charities spending 70%+ on programs receive a floor score of 80 (not an automatic 100). If the peer benchmark comparison produces a higher score, it takes precedence. This accommodates the sector consensus that overhead ratios above a reasonable threshold should not be the primary differentiator, while still rewarding charities that outperform their peers.
Religious organizations and grantmakers that route ≥80% of donations to registered recipients are floored at 80 in Donation Flow Patterns. Denominational tithing flows (e.g., a parish sending contributions to its diocese) and foundation-to-operating-charity grantmaking are normal governance patterns, not risk signals.
Circular donation flows between entities sharing the same 9-digit CRA root (same legal entity) or between religious organizations receive 75% dampened risk scores. These inter-entity transfers are common in federated organizational structures.
Charities with financial filings but no compensation records are treated as all-volunteer organizations. Their Compensation Proportionality score is set to 100 (not applicable) rather than penalized for missing data.
Charities that report total expenditures but no line-item breakdown (program, management, fundraising) receive full credit for Program Spending and Fundraising Efficiency. The absence of detailed breakdowns in CRA filings typically reflects small community organizations that lack formal fundraising operations, not an attempt to conceal spending patterns.
Charities with 2+ years of international spending history are recognized as having established international programs. High international spending ratios receive an informational flag rather than a mission drift penalty.
Between 2018 and 2021, the CRA reclassified certain spending categories on the T3010 form. The algorithm detects >20 percentage point jumps in admin or program ratios during this window and suppresses anomaly flags that would otherwise fire, preventing false "spending shift" flags from a regulatory form change.
A charity receives an NR designation when there is insufficient data to produce a reliable assessment. Specifically:
NR charities produce zero flags. If there is insufficient data to score, there is insufficient data to flag concerns. Any previously generated flags are cleared when a charity moves to NR status.
NR is not a negative assessment. It means the charity lacks sufficient CRA filing history for our algorithm to evaluate. Newly registered charities and very small organizations that file minimal returns are commonly NR.
Flags provide specific, actionable context for each score. Every flag has a severity level and a plain-English explanation.
| Severity | Meaning | Example |
|---|---|---|
| critical | Significant concern requiring attention | Status revoked, no directors, revenue cliff >50%, flow to revoked entity |
| warning | Notable pattern worth investigating | Revenue declining, board too small, elevated salaries, high fundraising costs |
| info | Informational context, generally neutral or positive | Revenue growing, healthy reserves, new charity, grantmaking organization |
Daily sync of 138,000+ registered charities. Status, name, address, category, designation.
15+ years of financial statements, compensation, programs, and international activities from Open Canada bulk datasets (2009–2023) and CRA Quick View pages (2024–2025).
457,000+ directors linked to charities via T3010 filings. Cross-referenced for contagion and stability analysis.
59 jurisdictions rated by Financial Action Task Force for money laundering / terrorism financing risk.
Each charity's score includes a data vintage field showing the most recent fiscal period used in scoring. This varies by charity because fiscal year-ends differ (e.g., March 31 vs December 31) and filing timelines vary.
Data vintage is displayed on each charity's profile and included in API responses. When evaluating a score, always check the vintage to understand how current the underlying financial data is.
Trust scores are data-driven assessments, not definitive judgments. They reflect what can be measured from public CRA filings and reference data. Important limitations include:
Charities graded NR (Not Rated) lack sufficient filing history for a reliable assessment. We encourage donors to use scores as one input among several — alongside direct engagement with the charity, site visits, and independent research.
| Version | Date | Key Changes |
|---|---|---|
| v3.1.0 | March 2026 | Composite scoring model (replaces AND-gate). Confidence caps. Dynamic component weighting. Smoothed reserve scoring with absolute-to-benchmark ramp. Two-way flow benchmark blend. Religious/grantmaker exemptions. CRA recoding detection. Size-aware volatility thresholds. |
| v2.5.0 | March 2026 | Full rescore of 137,316 charities. AND-gate grading model. |
| v2.0.0 | February 2026 | Peer benchmarking with asset-intensity cohorts. Unregistered-only flow penalties. GQD credit for program spending. |
| v1.0.0 | January 2026 | Initial three-score model with absolute thresholds. |
Search any of 138,000+ Canadian charities and see how our methodology translates into real grades and verdicts.
Search Charities