How to Embed a TikTok Feed on BigCommerce (Step-by-Step)
How to add a shoppable TikTok video feed to a BigCommerce store: Page Builder versus Script Manager for video, the Script Manager settings that matter (location, consent category, load method), what TikTok's official APIs cover, and how to confirm off-screen video isn't slowing your pages.
In this article
A TikTok feed on BigCommerce involves the same two tools as any other embed, Page Builder and Script Manager. With video the choice matters more, because a script that loads a player on every storefront page costs every shopper, including the ones who never see a video. This guide sets up the feed, places it on the pages that earn it, and checks that it loads responsibly.
Official TikTok options, and where a feed tool fits
TikTok offers embed code for individual videos, which you can paste into a Page Builder HTML widget. That works for one or two videos on a landing page; each embed loads TikTok's own player, and there are no product tags. For developers, TikTok's Display API has three endpoints (user info, video list and video query) that let you "display a TikTok user's profile and videos on your platform". It requires a TikTok developer app, Login Kit and the `user.info.basic` and `video.list` scopes granted by the account owner, so it suits your brand account rather than content other creators posted about you.
A shoppable video tool sits on top: it imports videos (your own, or creator content you have permission to use), lets you tag products to them, and renders them in a player it controls. That last point is what lets it keep off-screen video from downloading. For the strategy side of TikTok content, see TikTok UGC strategy for ecommerce.
Page Builder or Script Manager for video?
| Question | Page Builder HTML widget | Script Manager |
|---|---|---|
| Where does the code sit? | Exactly where you drop the widget on the page | In the page header or footer |
| Which pages load it? | Only pages (or global regions) where you placed it | Every page in the chosen location |
| Cookie consent | Not categorised by Script Manager | Categorised: Essential, Analytics, Functional or Targeting/Advertising |
| Load timing | As written in the embed code | Async, Defer or browser default |
| Best use for a TikTok feed | Carousels on homepage, product and landing pages | A loader your developer's theme template already calls, or a floating widget |
If you do use Script Manager, three settings matter. Location: BigCommerce's "Storefront pages" option covers every page except checkout and order confirmation; "All pages" adds checkout, order confirmation and cart. A video feed has no business on checkout, so choose Storefront pages. Script category: BigCommerce describes Functional scripts as ones that "enable enhanced functionality, such as videos and live chat", which fits a video feed; shoppers who decline that category won't see it, and that's the point of consent. Load method: Defer runs scripts in order after parsing, so it doesn't block the page from rendering.
Step by step with Idukki
TikTok feed on BigCommerce
- 01
Connect BigCommerce
Create a store-level API account (Settings › Store-level API accounts), then enter the store hash, client ID and access token in Idukki's BigCommerce settings and test the connection.
- 02
Add TikTok
Add TikTok as a source by username (your brand or an approved creator) or by hashtag.
- 03
Curate and tag
Build a collection, remove off-brand videos, and tag the products each video shows.
- 04
Copy the embed code
Choose a reel or carousel layout and copy the embed code from the collection's publish step.
- 05
Place with Page Builder
Storefront › Themes › Edit in Page Builder, drag an HTML widget into place, paste, save and publish.
The access token is shown once when you create the API account, so copy it before closing the dialog. If products don't appear when you tag, check they're in Idukki's product catalogue; the Products area can import a CSV or a product feed URL. For a product page, open the product from the BigCommerce product list's action menu with View in Page Builder and place the widget in a region on that page. Watch for regions labelled "-- Global" in the Layers menu: anything there appears on every page.
Performance: confirm video only loads when it's watched
The HTML video `preload` attribute is how a player tells the browser whether to download video in advance: `none` means don't preload, `auto` means the whole file may be fetched (MDN notes it is a hint the browser may override). Idukki's widget sets it by layout: in carousel and reel layouts only the active slide and its neighbours get `preload="auto"`, grid tiles get `none`, and video opened full-screen loads fully. For feeds below the fold, add `data-ugc-lazy="1"` to the placeholder element in the embed code so the widget doesn't mount until it's close to the viewport.
- 1Open a product page with the feed in Chrome and open DevTools.
- 2In the Console, run `document.querySelectorAll('video[preload="auto"]').length`. A handful at most is healthy.
- 3In the Network panel, filter to Media and reload. You shouldn't see downloads for videos you can't see.
- 4Run PageSpeed Insights on three pages and compare with your pre-install baseline, paying attention to Largest Contentful Paint and Cumulative Layout Shift.
- 5Reserve the carousel's height (a wrapping `div` with a `min-height` in the HTML widget) so it doesn't push content down; Google's good CLS threshold is 0.1 or less.
Core Web Vitals and UGC widgets explains how to read the results, and shoppable video covers the formats that work on product pages.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| Every page got slower, not just ones with the feed | Embed or loader added via Script Manager on all storefront pages | Move the embed into Page Builder on the pages that show it. |
| Feed shows at the bottom of every page | Embed added in Script Manager with footer placement | Remove it there; use the HTML widget. |
| Feed missing for some shoppers | Shopper declined the Functional category in the consent banner | Expected. Don't reclassify a video feed as essential. |
| Carousel appears on unrelated pages | Widget placed in a Global region | Move it to a page-specific region. |
| Many TikTok players on one page, slow on mobile | Several official per-video embeds | Use one feed widget with controlled loading. |
| Videos play but show no products | Nothing tagged | Tag products per video in the dashboard. |
FAQs
How do I embed a TikTok video on BigCommerce?
Copy the embed code (from TikTok for a single video, or from your feed tool for a gallery), open Page Builder from Storefront › Themes, drag an HTML widget onto the page and paste the code. Save, publish and check the live storefront.
Should a TikTok feed go in Script Manager?
Usually not. Script Manager places code in the header or footer of every page in the chosen location. A video feed belongs only on pages that show it, which is what Page Builder does.
Which Script Manager category should a video widget use?
Functional. BigCommerce describes that category as scripts that enable enhanced functionality such as videos and live chat. Essential is for scripts the site cannot work without.
Can I use TikTok's API to pull hashtag videos onto my store?
TikTok's Display API is built around the authorising user's own profile and videos. Showing other creators' videos on your store also needs their permission, whatever tool imports them.
Will a TikTok feed hurt my BigCommerce page speed?
It can if many videos preload or the player loads everywhere. Load only the visible video, lazy-mount feeds below the fold, and keep the embed to the pages that use it.
Sources
- 1BigCommerce Help Center: Using Script Manager · Location options, script categories and consent banner, load methods
- 2BigCommerce Help Center: Page Builder · HTML widget, View in Page Builder for products, global regions
- 3BigCommerce Docs: API accounts · Settings › Store-level API accounts
- 4TikTok for Developers: Display API overview · User info, video list, video query; required scopes
- 5MDN: the video element · preload values none, metadata, auto; preload is a hint
- 6web.dev: Cumulative Layout Shift (CLS) · Good CLS threshold of 0.1 or less
More from Rohin Aggarwal
- Strategy
Best Yotpo alternatives in 2026 (for reviews, UGC and visual marketing)
Seven Yotpo alternatives for 2026: Okendo, Judge.me, Loox, Junip, Stamped, REVIEWS.io and Idukki, compared by pricing model, platform reach and honest fit.
- Strategy
Best Bazaarvoice alternatives in 2026: from enterprise syndication to flat-rate UGC
The best Bazaarvoice alternatives in 2026: Yotpo, Nosto, Flowbox, REVIEWS.io, EmbedSocial, Judge.me and Idukki, sorted by whether you still need syndication.
- Strategy
Best Tolstoy alternatives in 2026 for shoppable video
Six Tolstoy alternatives compared for 2026: Idukki, Videowise, Whatmore, Quinn, Storista and Bambuser, with published pricing and honest fit notes.