# Offerwall with custom choice

# Display an Offerwall with Custom Choice

This example demonstrates how to display an Offerwall on your website and
present a custom choice to users. Learn more about Offerwall in the
[Google Ad Manager help center](https://support.google.com/admanager/answer/13860694).

Adding a custom choice lets you implement your own monetization solution
as an additional user selectable option within your Offerwall. For example, you
might let visitors purchase a subscription to access more content. For more
information about custom choice, see
[Set up a "custom choice" user choice](https://support.google.com/admanager/answer/13566866).

## Usage notes

- You must write and deploy your own implementation of the [Offerwall Custom Choice API](https://developers.google.com/funding-choices/offerwall-custom-choice-docs) to use the custom choice feature. Enabling custom choice without a correct implementation will result in Offerwall not displaying to end users.
- The location and text of your custom choice is previewable in the [message builder in Privacy \& messaging](https://support.google.com/admanager/answer/11897778). However, you can't preview the custom UI that displays after users select your custom choice from Google Ad Manager. Your custom code defines the look and behavior of the UI.
- You can only add one custom choice to an Offerwall.

## Sample implementation

[View demo](https://googleads.github.io/google-publisher-tag-samples/offerwall-custom-choice/js/demo.html)

> [!IMPORTANT]
> This sample makes use of library features that are not fully supported when running in an iframe. To view a demo of this sample in a new window, click the **View demo** button above.

### JavaScript

## Loading...

<iframe id="builder" class="fixed-size" loading="lazy"></iframe>

## Loading...

[Improve this sample](https://github.com/googleads/google-publisher-tag-samples/tree/main/dist/offerwall-custom-choice/js) [Report an issue](https://github.com/googleads/google-publisher-tag-samples/issues/new?labels=documentation&template=sample-feedback.md&title=Sample+feedback:+offerwall-custom-choice/js)

### TypeScript

## Loading...

<iframe id="builder" class="fixed-size" loading="lazy"></iframe>

## Loading...

[Improve this sample](https://github.com/googleads/google-publisher-tag-samples/tree/main/dist/offerwall-custom-choice/ts) [Report an issue](https://github.com/googleads/google-publisher-tag-samples/issues/new?labels=documentation&template=sample-feedback.md&title=Sample+feedback:+offerwall-custom-choice/ts)