Smarter Widgets, Better Results

Dynamic widgets adapt to traveler behavior by drawing on the live information your site feeds in. As visitors browse, these widgets update in real time to display the most relevant photos, prices, and reviews—so travelers always see the experiences most likely to spark their interest.

Why Partners Love Dynamic Widgets

Dynamic widgets were built with partner feedback at the core: you wanted tools that were low maintenance but high performing. Now you can set it, forget it, and watch results grow.

Highlights:

    2

    Built for bookings – Higher engagement leads to stronger conversion and commission.

    2

    Always relevant – Widgets adjust instantly based on traveler location, season, and behavior.

    2

    Optimized for every device – Beautiful layouts that adapt to mobile, tablet, and desktop.

    Where Dynamic Widgets Shine

    Dynamic widgets make it easy to drop high-performing, tailored content into any page.

    • Booking confirmation pages – After a booking (hotel, flight, or activity), show related tours to capture add-on revenue.
    • Destination landing pages – Keep “Things to Do in Rome” or “Experiences in Cancun” pages automatically updated with what’s trending.
    • Search results pages – When travelers search your site for a destination, the widget can surface tours that match those queries.
    • Thank-you or post-purchase pagesReinforce the traveler’s booking by suggesting complementary experiences they can add before their trip.

      How They Work

      Dynamic widgets use Viator’s global data to keep content fresh and tailored. Behind the scenes, the widget updates based on:

      • Location
      • Language
      • Currency
      • Traveler count
      • Age of children
      • Dates of travel

      The result? A widget that feels curated, without requiring you to curate it.

        How to Add a Dynamic Widget to Your Site

        To display a Viator widget on your site, you’ll need to insert a small block of code into your page. Here’s a simple example:

        <div

            data-vi-partner-id=”U00597509″

            data-vi-widget-ref=”W-d221060c-7906-45a8-891a-f3c2bf6f5146″

            data-vi-search-term=”London”

        ></div>

        <script async src=”https://www.viator.com/orion/partner/widget.js”></script>

         

        Step 1: Copy the Code Snippet

        • Place the <div> block where you want the widget to appear on your site (for example, inside your homepage or a destination page).
        • Add <script> anywhere you want the widget, as long as it’s before the closing </body> tag.

        Step 2: View Your Partner Details

        • data-vi-partner-id → This part will populate with your unique partner ID (you’ll receive this from Viator).
        • data-vi-widget-ref → This part will populate with the reference ID of the widget you want to use.

        These two values should stay the same for all placements unless you are using different widget templates. You won’t need to change these after you generate your widget.

        Step 3: Add Dynamic Options

        You can customize what the widget shows by adding extra attributes inside the <div>:

        • data-vi-search-term → Destination or attraction (e.g., “London”or “England” or “Big Ben”). You can also use a Viator destination ID if you know it.
        • data-vi-currency → Currency code (e.g., “USD”). (Optional)
        • data-vi-language → Language code (e.g., “EN”). (Optional)
        • data-vi-travel-date-from → Start date of travel, in YYYY-MM-DD format. (Optional)
        • data-vi-travel-date-to → End date of travel, in YYYY-MM-DD format. (Optional)
        • data-vi-travellers-adults → Number of adults (e.g., “2”). (Optional)
        • data-vi-travellers-children → Number of children (e.g., “2”). (Optional, use instead of ages)
        • data-vi-travellers-children-ages → Ages of child travelers separated by commas (e.g., “5,6”). (Optional, preferred over count if known)

        ⚠️ Note: Use either travellers-children or travellers-children-ages—not both. Providing ages gives better product matching.

        Step 4: Get More Complex

        If you’re wanting the widget to populate based on several key metrics here’s an example of code you can use. For any widget, you’ll need data-vi-partner-id, data-vi-widget-ref, and data-vi-search-term=”<DestinationName>”; everything else is optional.

        <div
            data-vi-partner-id="U00597509"
            data-vi-widget-ref="W-d221060c-7906-45a8-891a-f3c2bf6f5146"
            data-vi-currency="<UserCurrency>"
            data-vi-language="<UserLanguage>"
            data-vi-search-term="<DestinationName>"
            data-vi-travel-date-from="<TravelDate>"
            data-vi-travel-date-to="<ReturnDate>"
            data-vi-travellers-adults="<AdultTravellerCount>"
            data-vi-travellers-children-ages="<ChildTravellerAges.join(',')>"
        ></div>
        <script async src="https://www.viator.com/orion/partner/widget.js"></script>

          Frequently Asked Questions

          1. What are Dynamic Widgets?
          Dynamic Widgets are customizable tools you can embed on your site to showcase Viator tours, activities, and experiences. They automatically adjust based on dynamic variables you connect from your site to show travelers the most relevant options based on factors like location, seasonality and traveler behavior—helping drive more engagement and bookings without ongoing maintenance.

          2. How do they work?
          Dynamic Widgets use Viator’s recommendation engine to select experiences based on information you choose to connect in. Partners can pick between destination, attraction, number of people booked, dates, or language, and their widget will adapt responsively based on page data.

          3. What’s the difference between Dynamic and Static Widgets?

            • Dynamic Widgets update based on information plugged in from your site. They require no manual content management once connected, and are optimized to show high-converting, relevant experiences.
            • Static Widgets display top experiences in a preset location or attraction.

          4. What happens if no results are returned?
          The message below will populate and direct the traveler to search for things to do.

          5. What data powers the dynamic logic?
          Dynamic recommendations are based on information you connect in from your site. You can choose to have the data reactive based upon location, language, currency, traveler count, child ages, or date of travel.

          6. How will this impact performance?
          Dynamic Widgets are designed to increase click-through and conversion rates by ensuring travelers always see relevant, timely options.

          7. Is there any development work needed to add in dynamic widgets?
          Minimal. If you already use Viator widgets, you can replace the existing code with the updated Dynamic Widget code. Partners new to widgets can generate and embed the code directly from the partner portal.

          8. How will I know if it’s working?
          You can track performance through your partner reporting dashboard. Post-launch, we’ll monitor adoption and engagement metrics, and share best practices through partner communications.

          Ready to Get Started?

          Dynamic widgets take minutes to set up and deliver lasting impact. Simply embed once, and let the widget keep your site updated with experiences travelers are most likely to book.