# ShipScout documentation

ShipScout is a Shopify app for running shipping experiments. Merchants define variants — each with its own combination of shipping rates, free-shipping thresholds, and customer-facing copy — and ShipScout serves the right variant to each visitor at checkout so the merchant can measure which configuration drives the most revenue.

Visitors are assigned to a variant deterministically, so the same visitor sees the same variant across visits. Experiment participation is gated by a rollout percentage and an optional targeting tree based on URL parameters or visitor country. Merchants who already run their own experimentation platform can opt out of ShipScout's assignment and pass in their own variant choices instead — see [Bring your own targeting platform](/tasks/bring-your-own-targeting-platform.md) below.

ShipScout's rates appear at Shopify checkout alongside any other configured rates. Because they're served from a registered carrier service named "ShipScout", they're visible to Shopify Scripts and Delivery Customization Functions through the standard `source` field on shipping rates. When an order is placed, ShipScout records which variant the customer saw and how much they actually paid for shipping, so per-variant conversion and shipping revenue can be compared in the dashboard.

To keep the rest of your storefront consistent with the variant a visitor is in, ShipScout ships a configurable shipping banner — with templated copy for threshold-based, flat-rate, and always-free shipping scenarios — and a JavaScript SDK (`window.shipscout`) that exposes the assigned variant and threshold details to your theme. Use these to keep product pages, cart drawers, and FAQ pages in sync with what the visitor will see at checkout.

For anything not covered in these pages, email <support@shipscout.app>.

## In this section

{% content-ref url="/pages/-MBeAfhMvsyJprmhb-i8" %}
[Frequently asked questions](/frequently-asked-questions.md)
{% endcontent-ref %}

## Guides

{% content-ref url="/pages/-MM1ZQwij\_c0Vv-75FYS" %}
[Shipping banner configuration](/tasks/top-bar-integration.md)
{% endcontent-ref %}

{% content-ref url="/pages/-MBe7CbPucGp8VpLvb6q" %}
[Theme customizations using ShipScout data](/tasks/theme-customizations.md)
{% endcontent-ref %}

{% content-ref url="/pages/4Zv9uhl4HWEdRIb3Ppba" %}
[Bring your own targeting platform](/tasks/bring-your-own-targeting-platform.md)
{% endcontent-ref %}

{% content-ref url="/pages/-MDlirSp7pzoOb3veyIX" %}
[Add ShipScout to a shipping zone](/tasks/add-shipscout-to-shipping-zones.md)
{% endcontent-ref %}

{% content-ref url="/pages/EHo6roC1GsnRRpQTcXph" %}
[Headless stores](/tasks/headless-stores.md)
{% endcontent-ref %}

{% content-ref url="/pages/e4a24pF4fU6UKpixLdeM" %}
[Recharge (Shopify Checkout)](/tasks/recharge-shopify-checkout.md)
{% endcontent-ref %}

## Shopify Scripts

{% content-ref url="/pages/Z8KDFD6ciF947u8E6tya" %}
[Shopify scripts](/shopify-scripts/shopify-scripts.md)
{% endcontent-ref %}

{% content-ref url="/pages/-MYvxyNifYQ1Pr6vwOfX" %}
[Enforce stricter thresholds with discount codes](/shopify-scripts/discount-codes.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.shipscout.app/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
