This is the legacy documentation for Google Ads scripts. Go to the current docs.

YouTube Analytics

Stay organized with collections Save and categorize content based on your preferences.

Create report for a channel

function runYoutubeAnalyticsReport() {
  // Get the list of all channels.
  var myChannels = YouTube.Channels.list('id', {mine: true});

  // Pick the first available channel.
  var channel = myChannels.items[0];
  var channelId = channel.id;

  // Set the dates for report.
  var today = new Date();
  var oneMonthAgo = new Date();
  oneMonthAgo.setMonth(today.getMonth() - 1);

  var todayFormatted = Utilities.formatDate(today, 'UTC', 'yyyy-MM-dd');
  var oneMonthAgoFormatted = Utilities.formatDate(oneMonthAgo, 'UTC',
      'yyyy-MM-dd');

  // See https://developers.google.com/youtube/analytics/v1/reports for
  // supported dimensions and metrics.
  var analyticsResponse = YouTubeAnalytics.Reports.query(
    'channel==' + channelId,
    oneMonthAgoFormatted,
    todayFormatted,
    'views,likes,dislikes,shares',
    {
      dimensions: 'day',
      sort: '-day'
    });
  Logger.log(analyticsResponse);
}