> For the complete documentation index, see [llms.txt](https://docs.roadmap.so/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roadmap.so/tag-library/getting-started-with-tag-library.md).

# Getting started with Tag Library

Control storefront access with Secret Products, Protected Pages, eligibility rules, and scheduling.

Use Tag Library to control access to products, collections, and storefront URLs.

You do not need custom theme logic.

### Pick the right setup

Use **Secret Products** when the rule applies to products or collections.

Use **Protected Pages** when the rule applies to a storefront URL.

### What you can do with Tag Library

Use it to:

* show products only to approved customers
* hide products from specific audiences
* restrict landing pages or hidden URLs
* open or close access on a schedule
* redirect blocked visitors
* add password protection to pages

### How setup works

When you open **Tag Library**, you can create tags, review existing ones, and confirm whether each tag is **Draft** or **Active**.

![Tag Library home screen showing the Create a New Tag button and a list of tags with columns Tag Name, Type, Schedule, and Status](https://content.gitbook.com/content/J8asLD4FVCFagK40xEr4/blobs/Xn2Ok9NiJg1738n3ifKi/Screenshot_2026%2003%2011_at_12.36.50_PM.png)

{% stepper %}
{% step %}

#### Create a new tag

From **Tag Library**, click **Create a New Tag**.
{% endstep %}

{% step %}

#### Pick the right tag type

Choose **Secret Product** for products or collections.

Choose **Protected Pages** for storefront URLs.

![Select tag type modal showing Secret Product and Protected Pages options](https://content.gitbook.com/content/J8asLD4FVCFagK40xEr4/blobs/5qdxCYXQHYXjCvXzGq5q/Screenshot_2026%2003%2011_at_12.38.26_PM.png)
{% endstep %}

{% step %}

#### Configure the rule

Set the target, eligibility, redirect, and schedule.
{% endstep %}

{% step %}

#### Test in Draft

Check the rule with both eligible and ineligible customers.
{% endstep %}

{% step %}

#### Switch to Active

Turn the tag on only after testing passes.
{% endstep %}
{% endstepper %}

### Decide these settings first

Sort these five points before you build:

* what you are restricting: product, collection, or URL
* who should qualify
* whether the selected audience should be **Visible** or **Hidden**
* where blocked visitors should land
* whether access should start or end automatically

### Use Secret Products when

Use **Secret Products** when access is tied to products or collections.

Common cases:

* wholesale-only catalogs
* VIP product drops
* country-based product access
* repeat-buyer bundles

Next step: [Restrict products or collections in Tag Library](/tag-library/how-to-create-secrets-products-collections.md)

### Use Protected Pages when

Use **Protected Pages** when access is tied to a URL.

Common cases:

* members-only landing pages
* hidden collection links
* campaign pages
* password-protected access pages

Next step: [Creating Protected Pages in Tag Library](/tag-library/how-to-create-a-protected-page.md)

### Core settings you will use most

Every tag type relies on the same controls:

* **Customer Eligibility** decides who qualifies
* **Redirect ineligible customers to:** controls where blocked visitors land
* **Active Dates** controls start and end times
* **Status** controls whether the rule is live

Read next:

* [Customer eligibility controls in Tag Library](/tag-library/understanding-customer-eligibility-controls.md)
* [Schedule start and end dates in Tag Library](broken://spaces/J8asLD4FVCFagK40xEr4/pages/10be5c03a17b9a78682a6326bc9a747caa32419b)

### Recommended first setups

#### Wholesale-only products

Use **Secret Products**.

Set products to **Visible** only for **logged in customers tagged with** your wholesale tag, such as `Trade`.

#### VIP early-access page

Use **Protected Pages**.

Restrict the page to the right audience, then add an end date if the page should open to everyone later.

#### Timed campaign or product drop

Use **Active Dates** on either tag type.

Set a clear start time. Add an end date if access should expire automatically.

### Test before launch

Run this check before you activate the tag:

* the rule works for an eligible customer
* the rule blocks an ineligible customer
* the redirect path is correct
* the schedule is live now, if used
* the **When inactive** setting matches the result you want

### If something is not working

Check these first:

* the tag is **Active**
* the eligibility rules match your test customer
* the redirect path is correct
* the schedule is live now
* the **When inactive** setting matches the outcome you want

### Related guides

* [Restrict products or collections in Tag Library](/tag-library/how-to-create-secrets-products-collections.md)
* [Creating Protected Pages in Tag Library](/tag-library/how-to-create-a-protected-page.md)
* [Customer eligibility controls in Tag Library](/tag-library/understanding-customer-eligibility-controls.md)
* [Schedule start and end dates in Tag Library](broken://spaces/J8asLD4FVCFagK40xEr4/pages/10be5c03a17b9a78682a6326bc9a747caa32419b)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.roadmap.so/tag-library/getting-started-with-tag-library.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
