> For the complete documentation index, see [llms.txt](https://docs.exoclick.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.exoclick.com/tutorials/tutorials/publishers-tutorials/how-implement-in-stream-part1.md).

# In-Stream: How to implement In-Stream Part 1.

In-stream ad zones allow you to offer high-quality video ads during the playback of the videos on your side. In-Stream ads are a simple line of code that will work in any VAST-compatible player. We have made a guide divided into 3 parts to show you how to include this format in your site and how to make the most of it with your traffic.

## Create an In-Stream Ad Zone

First go to the **Sites & Zones** tab and click **New Zone**.

There is a drop down menu listing all your websites, select which one you want to place the in-stream ad zone.

<figure><img src="https://3569251062-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJ4RqRdVZkeXomdmwHKOL%2Fuploads%2FUOdS5VZ6NilzpjpEXzZv%2FHKPaZXobkr5maLc9sZAuUDBnecpvTCM7.png?alt=media&amp;token=904dd587-952f-4309-ad9b-fd121e0c8f92" alt=""><figcaption></figcaption></figure>

Click on the **Video** drop-down menu and select **In-Stream** and click **Next**.

Then, fill all the In-Stream ad zone settings.

<figure><img src="https://3569251062-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJ4RqRdVZkeXomdmwHKOL%2Fuploads%2FgXeb8ed9ALpx9tnzbNMB%2FQG1n1lX8WaE0HLxImwfNVZ33OtysCsIC.png?alt=media&amp;token=69b9339c-5ce0-4863-b248-ca1f9db8bbb6" alt=""><figcaption></figcaption></figure>

* **Name:** personalise the ad zone name to suit your own needs **(at least 5 characters long)**.
* **Category (default):** this is automatically selected based on the category of the site you selected in the previous step.
* **Subcategory (optional):** We recommend that, unless you want to run In-Stream videos on a gay site, you do not select a subcategory so you maximise your earning potential.
* **Frequency:** We recommend you set this to "**Every hour**", as it tends to generate good results. As a maximum we suggest no greater than **Every 15 minutes**, depending on the visit length and video views per visit.
* **"Skip" Button:** The industry standard is a setting of **5 seconds**. We strongly recommend you do not disable the skip option, as it may lead to advertisers blacklisting your ad zone(s), in addition to disrupting your traffic due to negative viewer experiences.
* **VAST Wrapper Support:** By default the VAST Wrapper Support box is ticked by default. Disable this if your video player does not support third-party VAST tags (VAST wrappers)
* **Fallback URL:** This gives you the option to set the minimum floor price advertisers need to bid in order to be able to target your zone. When Fallback URL is enabled, you will have to select a Floor type: **Soft Floor** and **Hard Floor**. A Soft Floor means that we will try to adapt to your floor bid, altough it might not be respected since we will allow CPC campaigns to run. Hard Floor guarantees that your floor will be respected because only CPM campaigns will be able to run.

When Fallback URL is enabled, you also need to specify the **Alternative URL** which will be displayed in case there aren't any advertisers who can meet this bid.

{% hint style="warning" %}
**Caution:** If this is the first time you have used **In-stream** we strongly recommend you do not enable Fallback URL until you've have run your In-Stream zone for a few days and you have a better idea of the eCPM you can reach with us. Otherwise, you may not receive any advertising in the ad zone.
{% endhint %}

You can also set up **Filters** in case you want to prevent certain products or video files from being promoted on your site. You can find out more about filters [**here**](/tutorials/tutorials/publishers-tutorials/dynamically-block-ad-types-for-exoclick-in-stream-zones.md). In this tutorial, we will skip these filters and focus on the integration.

Once these steps are completed click **Save & Preview**.

## Selecting your Video Player

When your ad zone has been created, you will see VAST tag url you will need to use in your video player you are using in your site.

{% hint style="info" %}
**Note** If you don't know which player to use, we strongly recommend you to use [**Fluid Player**](https://www.fluidplayer.com/) as it is 100% compatible with our ad codes.
{% endhint %}

<figure><img src="https://3569251062-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJ4RqRdVZkeXomdmwHKOL%2Fuploads%2FrDTtn7E5Hn79E084EhLx%2Fin-stream_vast.png?alt=media&amp;token=d4021cb0-4abe-4d5d-8067-2cdfd37ae964" alt=""><figcaption></figcaption></figure>

Alternatively, there are some specific integrations per compatible players that will be covered in the next section of our guide. [**Click here to continue**](/tutorials/tutorials/publishers-tutorials/how-implement-in-stream-part2.md)

## Extra information: Structure of the VAST XML

The **VAST XML** is the "skeleton" of the in-stream advertisement. It contains a set of instructions so that the video players knows which ads to display, how to display them and how to track their performance.

In the [VAST section from our documentation](/tutorials/tutorials/publishers-tutorials/how-implement-in-stream-part1.md), you can find detailed examples of VAST XMLs returned by our ad zones. As a publisher, you do not need to worry about what is returned in the VAST XML except in these situations:

* Most of our VAST ads are in VAST 3.0. However, some campaigns might be served in newer versions of VAST (4.x). Make sure that your video player is compatible with VAST ads version 3 and higher.
* **When the VAST XML returns a Wrapper element instead of an Inline element**. A Wrapper element is a redirection to an advertisement located in a 3rd-party server. VAST Wrapper ads are dealt with in a [separate article](/tutorials/tutorials/publishers-tutorials/compatible-vast-wrapper-players.md).
* **When the VAST XML returns empty**, in which case there will be no ads to show. This scenario will be covered in [Step 3 of this guide](/tutorials/tutorials/publishers-tutorials/how-implement-in-stream-part3.md).

## Understanding VAST Versions

* VAST 3.0: The widely adopted version, supporting core video ad features such as video ads, click-through URLs, and tracking events. It is compatible with most video players and is the default version for many advertisers.
* VAST 4.3: A more recent version that includes additional enhancements, such as improved tracking and error handling and better compatibility with modern video players. If your player supports VAST 4.x, you may see ads served in VAST 4.3 format.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.exoclick.com/tutorials/tutorials/publishers-tutorials/how-implement-in-stream-part1.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
