Uncaught ReferenceError: ytcfg is not defined (also __ytRIL is not defined)

Thomas Vanier picture Thomas Vanier · Nov 16, 2016 · Viewed 28.9k times · Source

I have been using the YouTube IFrame Player API without problem for months and started to see this exception recently when the player loads: Uncaught ReferenceError: ytcfg is not defined Inspecting the iframe, I see a successful call to yt.setConfig, but ytcfg.set fails later. Was the API changed recently? Any player parameter could cause this problem?

<script src="//s.ytimg.com/yts/jsbin/www-embed-player-vflnzmqns/www-embed-player.js" type="text/javascript" name="www-embed-player/www-embed-player"></script>
<script src="//s.ytimg.com/yts/jsbin/player-en_US-vflr--npw/base.js" name="player/base"></script>
<script>
    yt.setConfig({
        ...
    });
    writeEmbed();
</script>
<script>
    ytcsi.info('st', 35);
    ytcfg.set({
        "TIMING_ACTION": "",
        "CSI_VIEWPORT": true,
        "TIMING_INFO": {
            "c": "WEB",
            "yt_li": 1,
            "cver": "1.20161112",
            "yt_lt": "cold"
        },
        "CSI_SERVICE_NAME": "youtube"
    });
    ;</script>

There several variations of this issue:

https://issuetracker.google.com/issues/35178202 "ytcfg is not defined" https://issuetracker.google.com/issues/35177930 "__ytRIL is not defined"

Answer

andyisnowskynet picture andyisnowskynet · Nov 16, 2016

It looks like the bug is on youtube's side. You can see the same JS error here: https://www.youtube.com/embed/U-xetxYwyak