---
title: Customization
description: Where to go when presets are not enough and you need custom cascades, validators, or domain-specific behavior.
---

Use this page when the default routing or validation behavior is not enough for the workload.

## Customization Areas

| Area | Deep guide | Example |
|---|---|---|
| Custom cascades | [custom_cascade.md](https://github.com/lemony-ai/cascadeflow/blob/main/docs/guides/custom_cascade.md) | [examples/custom_cascade.py](https://github.com/lemony-ai/cascadeflow/blob/main/examples/custom_cascade.py) |
| Custom validation | [custom_validation.md](https://github.com/lemony-ai/cascadeflow/blob/main/docs/guides/custom_validation.md) | [examples/custom_validation.py](https://github.com/lemony-ai/cascadeflow/blob/main/examples/custom_validation.py) |
| Semantic quality and domain signals | [quickstart.md](https://github.com/lemony-ai/cascadeflow/blob/main/docs/guides/quickstart.md) | [examples/semantic_quality_domain_detection.py](https://github.com/lemony-ai/cascadeflow/blob/main/examples/semantic_quality_domain_detection.py) |
| Rate or budget strategies | [user-budget-tracking.md](https://github.com/lemony-ai/cascadeflow/blob/main/docs/guides/user-budget-tracking.md) | [examples/rate_limiting_usage.py](https://github.com/lemony-ai/cascadeflow/blob/main/examples/rate_limiting_usage.py) |

## Guidance

- Start with defaults or presets.
- Only add custom routing when the workload has clear domain or policy needs.
- Prefer example-backed patterns over ad hoc implementation.
