# json: cannot unmarshal number into Go struct field Age of type string

- **ID:** `go/encoding-json-type-mismatch`
- **Domain:** go
- **Category:** type_error
- **Verification:** ai_generated
- **Fix Rate:** 80%

## Root Cause

The JSON data contains a numeric value where the Go struct expects a string, causing a type mismatch during unmarshaling.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 1.20 | active | — | — |

## Workarounds

1. **** (85% success)
   ```
   type Person struct { Age string `json:"age"` }; var p Person; if err := json.Unmarshal(data, &p); err != nil { ... }; // or use custom UnmarshalJSON
   ```

## Dead Ends

- **** — Loses type safety and requires manual type assertions, increasing complexity. (80% fail)
- **** — Silently drops data, leading to incorrect application behavior. (90% fail)
