# Send scans to different links (Help)

URL: https://qrdx.dev/docs/help/dynamic-codes/routing
Source: https://github.com/bucharitesh/qrdx/blob/main/apps/docs/content/docs/help/dynamic-codes/routing.mdx

Route each scan by device, country, language or time, and run A/B tests with smart routing.

Smart routing sends each scan of a dynamic code to a different link, based on rules you set. Pro and Business only.

## Add a rule [#add-a-rule]

1. Open the code from **Codes**.
2. Under **Settings**, open **Smart routing**.
3. Click **Add rule**, or start from a template.
4. Choose a condition and the link that matching scans open.
5. Click **Save rules**.

Scans that match no rule open the code's normal destination.

## Conditions you can use [#conditions-you-can-use]

Device, operating system, country, region, language, time of day, date range and scan count. Each condition can also be turned around with **is not**.

A rule can have up to 8 conditions. A code can have up to 20 rules.

## Templates [#templates]

- **Smart app link**: iPhones to the App Store, Android phones to Google Play.
- **Country** and **Visitor language**.
- **Business hours**.
- **Date range** for a campaign.
- **First scans**: a different link for the first scans.
- **A/B split**: share scans between up to 5 versions.

## The first matching rule wins [#the-first-matching-rule-wins]

Rules are checked from top to bottom. Put the most specific rules first.

Click **Test your rules** to see where a scan would go before you save.

## A/B tests [#ab-tests]

An A/B split sends each visitor to one version. The same visitor sees the same version for the rest of the day. The code's page shows how scans split between versions.

## After a downgrade [#after-a-downgrade]

Saved rules keep working.

## Related [#related]

- [Smart routing guide](https://qrdx.dev/docs/smart-routing)
- [A code opens the wrong page](https://qrdx.dev/docs/help/troubleshooting/wrong-destination)
