> ## Documentation Index
> Fetch the complete documentation index at: https://docs.atomcommerce.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Gift With Purchase Storefront Settings

> Configure gift auto-add behavior, removal memory, and gift picker button styling in the Atom Commerce Connector theme block.

These settings control how Gift with Purchase (GWP) behaves on your storefront after a shopper qualifies for a gift. They live in the Shopify theme editor, not in the Atom offer builder.

Open **Online Store → Themes → Customize → Atom Commerce Connector**, then scroll to **Gift with Purchase**.

Offer setup (qualifiers, gifts, and whether shoppers choose a gift) is covered in the [Gift With Purchase guide](/guides/gift-with-purchase).

***

## Most stores only need these settings

1. Leave **Gift Auto-Add Behavior** on **Always add missing gifts** if you want Atom to keep offering the gift whenever the cart still qualifies.
2. Switch to **Respect shopper removal** if you do not want Atom to re-add a gift the shopper removed, or re-open the gift picker after they dismiss it.
3. Optionally set **Gift Removal Memory (minutes)** and match **Gift Picker Button** colors to your brand.

***

## Gift Auto-Add Behavior

This setting applies when the cart still qualifies for a gift but the shopper has declined it.

| Option                                 | What Atom does                                                                                                                                                                                                                                   |
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Always add missing gifts** (default) | Re-adds automatic gifts that are missing from the cart. Keeps re-opening the gift picker when the shopper still needs to choose a gift.                                                                                                          |
| **Respect shopper removal**            | Remembers the shopper's decline for the [Gift Removal Memory](#gift-removal-memory-minutes) window. Does not re-add an automatic gift after the shopper removes it, and does not re-open the gift picker after the shopper closes it with **X**. |

### What counts as a decline

| Shopper action                                                  | Always add missing gifts                        | Respect shopper removal                            |
| --------------------------------------------------------------- | ----------------------------------------------- | -------------------------------------------------- |
| Removes an **automatic** gift from the cart                     | Gift is re-added on the next cart update        | Gift stays out for the memory window               |
| Closes the gift picker with **X** without finishing a selection | Picker can open again on the next cart update   | Picker stays closed for the memory window          |
| Selects enough gifts and the picker closes on its own           | Normal                                          | Normal — Atom does **not** treat this as a decline |
| Removes a **chosen** gift from the cart after using the picker  | Picker can open again if gifts are still needed | Picker can open again if gifts are still needed    |

<Info>
  Removing a gift the shopper already chose from the picker is not the same as dismissing the picker. Only closing the picker with **X** (or removing an automatic gift) uses removal memory when **Respect shopper removal** is on.
</Info>

Memory is stored in the browser tab (`sessionStorage`). It clears when the tab closes, and it expires after the memory minutes you configure.

***

## Gift Removal Memory (minutes)

How long Atom remembers a decline when **Gift Auto-Add Behavior** is **Respect shopper removal**.

| Detail     | Value                                                          |
| ---------- | -------------------------------------------------------------- |
| Range      | 5 to 240 minutes                                               |
| Default    | 60 minutes                                                     |
| Applies to | Automatic gift removals **and** gift picker dismissals (**X**) |

If behavior is **Always add missing gifts**, this setting has no effect.

***

## Gift picker button styling

These settings style the **Add** buttons inside the gift picker modal (the sheet shoppers use when the offer lets them choose a gift).

| Setting                              | Default      | Effect                              |
| ------------------------------------ | ------------ | ----------------------------------- |
| **Gift Picker Button Color**         | `#0c0b0a`    | Background of **Add** buttons       |
| **Gift Picker Button Text Color**    | `#ffffff`    | Label and loading spinner color     |
| **Gift Picker Button Border Radius** | `4px` (0–40) | Corner roundness of **Add** buttons |

Match these to your theme buttons so the picker feels native to your storefront.

### What shoppers see in the picker

* A modal titled with the offer name
* Gift options in a carousel (up to two gift cards at a time on mobile)
* Struck-through original price with **FREE** (or the gift discount) and an **Add** button
* A selection counter such as `0 out of 1 selected`
* An **X** control to dismiss without choosing

***

## Offer settings that affect the picker

These options are set on the GWP offer in **Atom Commerce**, not in the theme editor.

| Offer setting                              | Effect on the storefront                                                                                                                          |
| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Allow shopper to choose free gifts** off | Atom adds eligible gifts automatically (no picker).                                                                                               |
| **Allow shopper to choose free gifts** on  | Atom shows the gift picker when the shopper must choose a subset of gift options.                                                                 |
| Number of gifts the shopper may choose     | Cap on how many gifts they can add from the picker. If that number equals the number of gift options, Atom adds all of them and skips the picker. |

Theme **Gift Auto-Add Behavior** and **Gift Removal Memory** still apply as described above for automatic gifts and picker dismissals.

***

## Troubleshooting

| Symptom                                             | What to check                                                                                                                                     |
| --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| Gift keeps coming back after the shopper removes it | Set **Gift Auto-Add Behavior** to **Respect shopper removal**, and confirm **Gift Removal Memory** is long enough for your checkout flow.         |
| Gift picker keeps reappearing after **X**           | Same as above. Respect removal must be on; memory only applies after an **X** dismiss, not after a completed selection.                           |
| Picker never appears                                | Confirm the offer has **Allow shopper to choose free gifts** enabled, more gift options than the choose limit, and that the cart still qualifies. |
| **Add** buttons look wrong                          | Adjust the three **Gift Picker Button** color and radius settings.                                                                                |
| Behavior resets after closing the tab               | Expected — memory is per browser tab and does not persist across new sessions.                                                                    |

***

## Related

* [Gift With Purchase guide](/guides/gift-with-purchase)
* [Gift With Purchase offer type](/offers/types/gift-with-purchase)
* [Cart Upsell Settings](/upsells/settings)
