The CRUX Grading Mechanism
How a CRUX Grade is produced
A CRUX Grade is a letter, A+ to D, or Not Rated. It is produced by a fixed set of rules from records that are public, and the rules are on this page. The same filings always produce the same grade: no model decides it, and nobody can buy one.
Our agents plan the searches and read the documents. They never set the grade. Every grade carries the version and the hash of the exact rulebook that produced it, so a grade from today and a grade from six months ago can be told apart.
- Version in force
- —
- Methodology hash
- —
The hash is a SHA-256 of the engine’s rule tables, serialised in a fixed order. Change any published rule and the hash changes with it — that is what it is for. Both values are read from the grading service; an em dash means the service did not answer, not that there is no rulebook.
The grade bands
Seven letters and a refusal. Each module is scored on its own, the scores are combined into a single 0–100 composite, and the composite falls into one of the bands below. The letter is the verdict; the composite is the arithmetic behind it and stays secondary everywhere CRUX shows it.
- A+
Clean across the checks that matter.
Composite 90 and above
- A
Clean across the checks that matter.
Composite 80 to below 90
- B+
Sound overall, with points worth reading.
Composite 70 to below 80
- B
Sound overall, with points worth reading.
Composite 60 to below 70
- C+
Real concerns in the record. Read the modules.
Composite 50 to below 60
- C
Real concerns in the record. Read the modules.
Composite 40 to below 50
- D
Serious adverse findings. Do not proceed on this alone.
Composite below 40
- NR
Not Rated. Not enough verified data to grade responsibly. No composite is published, and CRUX names the inputs it could not assess.
Colour follows the letter, and never carries meaning on its own: every band above is named by its letter and its plain-English reading, and a grade chip in the product always prints the letter.
The seven modules
Each module reads a different part of the record and scores it 0–100, where higher is better. A module with too little to go on is marked not assessed rather than scored at zero, and what it would have counted for moves to the modules that did run.
Legal Standing
Court and tribunal cases tied to the promoter, and what could not be tied to them.
Reads: GujRERA authority and tribunal; eCourts, High Court, Supreme Court, IBBI
Delivery Execution
Whether the project is being built at the pace its own filings promised.
Reads: GujRERA quarterly filings
Developer Trust
The developer's track record across everything they have registered.
Reads: GujRERA promoter profile
Financial Integrity
What the project's own escrow and fund-utilisation filings say about the money.
Reads: GujRERA Form 3 and escrow filings
Compliance
Whether the registration and mandatory filings are current and complete.
Reads: GujRERA permanent documents and filing history
Location
Where it sits, and what is actually within reach of it.
Reads: Google Maps
Price Fairness
Whether the asking price is defensible for this location and this stage.
Reads: GujRERA declared unit rates, and comparable projects in the corpus
How much each module counts
Not equally, and not the same way for every project: what you intend to do with a property and how far along it is both change which modules matter. CRUX does not publish that table. Publishing it is an invitation to file toward it, and a grade that can be gamed by the party being graded is worth nothing to the party reading it. What CRUX does publish is every input, every module verdict and the document behind each one, so the reasoning can be checked even where the arithmetic is not printed.
Reading a module bar
Module scores are drawn on one scale across the whole product, so a bar on the report and the same bar on your dashboard never disagree.
- Below 30
- 30 to 55
- Above 55
Every bar prints its number beside it, so the colour is a second reading of the score rather than the only one.
The records CRUX reads
Four families, and no others. A module verdict that cannot point at a record in this list does not get published. CRUX grades RERA-registered projects in Gujarat; the districts with a corpus deep enough to grade from today are Ahmedabad, Gandhinagar, Surat, Vadodara and Rajkot.
GujRERA filings
The project's registration record, its quarterly progress and escrow filings, its Form 3 certificate, its permanent documents and its declared unit rates — read as the authority's JSON record and as the certified PDFs behind it.
- Feeds
- Delivery Execution, Financial Integrity, Compliance, Developer Trust, Price Fairness
- Authority
- T1 for a certified PDF, T2 for the JSON record alone
- Half-life
- 182.5 days (two quarters)
GujRERA authority and appellate tribunal
Complaints and orders in the RERA chain, counted as their own severity class and scaled against how many projects the promoter has registered.
- Feeds
- Legal Standing
- Authority
- T1
- Half-life
- 90 days
eCourts, Gujarat High Court, Supreme Court and IBBI
Case listings and their status, mapped to a severity class by a versioned keyword taxonomy that is itself part of the methodology hash.
- Feeds
- Legal Standing
- Authority
- T1
- Half-life
- 90 days
Google Maps
Distances and places around the project, turned into transit, amenity, employment-proximity and negative-externality sub-scores, then cached.
- Feeds
- Location
- Authority
- T2
- Half-life
- 180 days
Authority tiers
Every piece of evidence is stamped with how authoritative its source is, and that stamp caps how much confidence the module reading it can report.
- T1
- A certified document or an official case record. Full authority.
- T2
- A structured record from the authority's own system, without the certified document behind it.
- T3
- Something you told CRUX — a quoted price, for instance.
- T4
- Self-published material, such as a builder's own website. T4 may never move a score. It can only contradict the record, and a contradiction is published as a flag with both sides quoted.
Half-life, and why a record goes stale
An old reading is not a wrong reading, but it is a less certain one. Each source family decays on its own clock, and that decay feeds confidence rather than the score: a case status read three months ago has half the freshness of one read today, a quarterly filing halves over two quarters, and a cached map reading halves over six months. A promoter profile halves over a year.
What CRUX does not read
There is no adapter for company filings, price indices, registry records, air quality, satellite imagery or telecom data, so none of them can appear behind a grade. A builder’s own website is read, but only to cross-check: it may contradict the regulator’s record, and CRUX publishes that contradiction with both sides quoted. It may never move a score in either direction.
Confidence, and when CRUX refuses to grade
Confidence is computed, not asserted. It is the part of the method that decides whether a grade gets published at all.
How a module’s confidence is computed
Three factors, multiplied: how much of the module’s intended evidence was actually found, how fresh that evidence is on its source’s own half-life, and how authoritative the weakest load-bearing source was. A module resting on a structured record where a certified document was expected cannot report full confidence, however complete it is.
How the grade’s confidence is computed
The assessed modules’ confidences are combined in proportion to how much each counts toward this grade, and then scaled down by the share of the grade those modules actually represent. Without that second step, a grade resting on two modules would report the same confidence as one resting on all seven.
Not Rated
Below 0.40 composite confidence, CRUX publishes no letter and no composite. It publishes a reason instead, naming the inputs it could not assess — for example:
Insufficient verified data for a responsible grade. Missing: legal search, certified financials.
One exception, and it runs the other way: when a gate has fired, the grade is published even if confidence is low. A confident adverse finding must be shown, not hidden behind a refusal.
Provisional and degraded
Between 0.40 and 0.55, the grade is published and marked provisional. A grade is also marked degraded when coverage in any of Legal Standing, Delivery Execution, Financial Integrity falls below 0.30, however high the overall number is. Those three are the modules a grade cannot honestly rest on thin coverage of.
Tying a court record to a builder
Builder names repeat, and a case filed against a similarly named entity in another district is not this promoter’s case. Every record is given a match confidence from four independent signals: an exact name match, a district match, an overlap between the case’s era and the promoter’s, and a co-party match.
- 0.85 and above — counted in full.
- 0.60 to below 0.85 — counted in proportion to the match confidence, and labelled for you to verify.
- Below 0.60 — listed as a possible case for you to check, and excluded from the grade entirely.
The four gates that turn on a legal finding need a match confidence of at least 0.85 before they may fire.
Of 16,982 court records pulled across the five forums, 8,288 cleared the threshold to count. The rest are shown as possible cases and excluded from every grade. Source: CRUX crawl audit, measured 18 September 2026.
No cases found is not a clean record
An empty search result is gated on how complete the search was and on whether the promoter could plausibly have a record at all. A promoter with one registered project and no establishable tenure has had no time to accumulate litigation, so a silent search says nothing — that case is capped and reported as uncertainty rather than as a clean history. Only a search that actually ran to completion against a promoter with a history is reported as clean.
The gates
Five findings are serious enough that the rest of the record cannot average them away. Each one is a ceiling on the composite, applied after the composite is computed and before the letter is assigned. When more than one fires, the lowest ceiling wins. A gate never deducts points; it sets a limit, and the reason is printed on the report next to the record that triggered it.
- G1Best possible grade: D
GujRERA registration revoked
The regulator has revoked the project's registration. Read straight off the GujRERA record, so no name matching is involved.
Composite capped at 39
- G2Best possible grade: C
Active title or land dispute on the project land
A live matter in the engine's title-and-land severity class that touches this project's land specifically — not merely a matter somewhere in the promoter's history.
Composite capped at 49 · needs a match confidence of 0.85
- G3Best possible grade: C
Active criminal proceeding against the promoter or a signatory
A live matter in the engine's criminal severity class, tied to the promoter or an authorised signatory.
Composite capped at 49 · needs a match confidence of 0.85
- G4Best possible grade: D
Insolvency admitted at the NCLT
An admitted insolvency proceeding, not a filing or a notice.
Composite capped at 39 · needs a match confidence of 0.85
- G5Best possible grade: B
Escrow anomaly
Withdrawals running at twice the filed construction progress while build velocity has been at or below zero for two consecutive quarters, read from the project's own quarterly filings.
Composite capped at 69
What a CRUX Grade is not
A CRUX Grade is CRUX’s opinion about a project, formed from the records it was able to read at the time of grading. It is a research tool for your own diligence — not investment advice, not a legal opinion, and not a substitute for a lawyer, a chartered accountant or your own reading of the documents.
The bands have not been calibrated against outcomes. No backtest and no predictive-accuracy study has been run, and the curves are not tuned to any record of what did or did not go wrong. The thresholds are a published rule, not a measured prediction, and CRUX makes no claim about what a grade forecasts.
Public records can be incomplete, out of date, or indexed under a name that does not match the promoter’s. CRUX gives no warranty that a grade, a module verdict or a linked record is complete or free of error, and a grade says nothing about whether a project is sound to buy into.
CRUX is not affiliated with, endorsed by, or acting on behalf of GujRERA, any court or tribunal, any government department, any developer or industry body, or any listing portal.
Version, hash and changes
Every grade records the version and the hash of the rules that produced it. The hash is computed from the rule tables themselves, so two grades carrying the same hash were produced by identical rules, and a change to any published rule shows up as a different hash whether or not the version number moved.
Currently in force: —, hash —.
Changelog
CGM-1.1
16 September 2026- The fallback severity class — the one a case type lands in when the taxonomy does not recognise it — was lowered, so an unrecognised matter barely moves a grade. The named serious classes were left untouched: a live title suit still scores the same as it did.
- Cross-checking of a builder's self-published claims against the regulator's record was added. A contradiction is published as a flag with both sides quoted and a link to the page it came from, and costs a little confidence. It can never move a module score, and it can never push a grade to Not Rated or away from it.
CGM-1.0
Date not recorded in the rule tables- The seven-module engine, the letter bands, the five gates, the confidence and Not Rated rules, and the legal match-confidence thresholds.
- The methodology hash became a SHA-256 of the rule tables themselves, replacing a constant string that identified nothing.
Entries record changes to the published rules. A grade produced under an earlier version keeps that version’s hash and is not silently restated under the current rules.