# Halowerk Gentrification Index Calculator

> Halowerk Gentrification Index Calculator is a paid API for AI agents from prop.halowerk.com, paid per call via x402, $0.003/call, status unknown (last checked 2026-09-14).

Normalizes current-minus-baseline metric changes by a supplied scale, applies directional weighting, clips extremes, and maps the result to a 0–100 gentrification pressure index.

## Facts

- Endpoint: POST https://prop.halowerk.com/v1/gentrification-index
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/halowerk-gentrification-index-calculator-670b18e6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_-h7gIWNAv0KA59e9aXDGH

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability halowerk-gentrification-index-calculator-670b18e6 -d '<json body>'
```

Example prompt: Calculate the gentrification pressure index for this neighborhood using three metrics: median rent went from $1200 to $1800 (scale 2000, direction increase, weight 1), median household income went from $45000 to $62000 (scale 80000, direction increase, weight 0.8), and college-educated share went from 0.22 to 0.38 (scale 1, direction increase, weight 0.5).

## When to prefer this

Use this endpoint when you have pre-collected baseline and current values for neighborhood metrics and need a standardized, weighted 0–100 composite index score without any data-fetching or demographic identification. Prefer it over manual aggregation when you need consistent normalization and clipping logic across multiple heterogeneous metrics (rent, income, education, vacancy, etc.) with caller-controlled directional weighting.

## Known failure modes

- Missing required metric fields (metric_id, baseline_value, current_value, normalization_scale, pressure_direction, weight) returns a validation error
- normalization_scale of zero or below minimum threshold returns an error
- Metrics array empty or exceeds 1000 items returns a schema validation error
- weight or value out of allowed numeric bounds returns a validation error
- Invalid pressure_direction value (must be 'increase' or 'decrease') returns an error
- Payment failure or insufficient USDC balance returns 402 Payment Required

## How this service works

Standardizes current-minus-baseline change by a supplied scale, applies an explicit direction and weight, clips extreme components, and maps the weighted result to a 0–100 descriptive index. Metric selection and interpretation remain with the caller. It does not obtain data, identify individuals, establish causation, rank residents or justify displacement decisions.

## Output

Returns a 0–100 numeric gentrification pressure index derived from the caller-supplied metrics after normalizing each (current minus baseline divided by normalization scale), applying directional sign and weight, clipping extreme component values, and aggregating into a single descriptive score. Higher values indicate greater gentrification pressure. The caller is responsible for metric selection and interpretation.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "metrics": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "metric_id",
     "baseline_value",
     "current_value",
     "normalization_scale",
     "pressure_direction",
     "weight"
    ],
    "properties": {
     "weight": {
      "type": "number",
      "maximum": 1000000,
      "minimum": 0
     },
     "metric_id": {
      "type": "string",
      "maxLength": 128,
      "minLength": 1
     },
     "current_value": {
      "type": "number",
      "maximum": 1000000000000000,
      "minimum": -1000000000000000
     },
     "baseline_value": {
      "type": "number",
      "maximum": 1000000000000000,
      "minimum": -1000000000000000
     },
     "pressure_direction": {
      "enum": [
       "increase",
       "decrease"
      ],
      "type": "string"
     },
     "normalization_scale": {
      "type": "number",
      "maximum": 1000000000000000,
      "minimum": 1e-9
     }
    },
    "additionalProperties": false
   },
   "maxItems": 1000,
   "minItems": 1
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/halowerk-gentrification-index-calculator-670b18e6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from prop.halowerk.com](https://www.zero.xyz/host/prop.halowerk.com/llms.txt)
