Deprecated: Return type of WP_Theme::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php on line 554

Deprecated: Return type of WP_Theme::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php on line 595

Deprecated: Return type of WP_Theme::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php on line 535

Deprecated: Return type of WP_Theme::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php on line 544

Deprecated: Return type of WP_REST_Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-request.php on line 960

Deprecated: Return type of WP_REST_Request::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-request.php on line 980

Deprecated: Return type of WP_REST_Request::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-request.php on line 992

Deprecated: Return type of WP_REST_Request::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-request.php on line 1003

Deprecated: Return type of WP_Block_List::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 151

Deprecated: Return type of WP_Block_List::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 175

Deprecated: Return type of WP_Block_List::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 164

Deprecated: Return type of WP_Block_List::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 186

Deprecated: Return type of WP_Block_List::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 138

Deprecated: Return type of WP_Block_List::offsetExists($index) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 75

Deprecated: Return type of WP_Block_List::offsetGet($index) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 89

Deprecated: Return type of WP_Block_List::offsetSet($index, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 110

Deprecated: Return type of WP_Block_List::offsetUnset($index) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 127

Deprecated: Return type of WP_Block_List::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 199

Deprecated: DateTime::__construct(): Passing null to parameter #1 ($datetime) of type string is deprecated in /home/superbeet/dev.beet.tv/wp-includes/script-loader.php on line 333

Deprecated: Return type of Requests_Cookie_Jar::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 63

Deprecated: Return type of Requests_Cookie_Jar::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 73

Deprecated: Return type of Requests_Cookie_Jar::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 89

Deprecated: Return type of Requests_Cookie_Jar::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 102

Deprecated: Return type of Requests_Cookie_Jar::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 111

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 40

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 51

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 68

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 82

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 91

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/superbeet/dev.beet.tv/wp-includes/class-wp.php on line 173

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667
{"id":59034,"date":"2019-02-14T11:13:20","date_gmt":"2019-02-14T16:13:20","guid":{"rendered":"https:\/\/www.beet.tv\/?p=59034"},"modified":"2019-02-14T11:13:20","modified_gmt":"2019-02-14T16:13:20","slug":"hulu-doug-fleming","status":"publish","type":"post","link":"https:\/\/dev.beet.tv\/2019\/02\/hulu-doug-fleming.html","title":{"rendered":"Hulu Embraces Automation, Carefully: Fleming"},"content":{"rendered":"

PHOENIX — Advertisers want choice, control and freedom to buy using automated technology platforms – but that doesn’t mean Hulu is going to let just anyone purchase its ad space.<\/p>\n

The online TV provider last month\u00a0announced<\/a>\u00a0it made $1.5 billion in ad revenue last year, a rise of 45%, increasing it advertiser base by 50%.<\/p>\n

In this video interview with Beet.TV, Doug Fleming, Hulu head of advanced TV, says that the company aims to put programmatic, automated sales methods “on equal footing” with ads sold directly by its human staff.<\/p>\n

“When we look at the landscape, you can see this march towards automation,” Fleming says. “We’re not going to get in the way of that. We’re going to embrace that.<\/p>\n

“We now have enough inventory and enough access that we have decided to create a team under me to go out and affect those agency trading desks and those folks that have decided to bring programmatic buying in-house.”<\/p>\n

Hulu uses Telaria\u2019s\u00a0VMP<\/a>\u00a0(Video Management Platform) \u2013 which supports decisioning, demand delivery and analytics \u2013 to measure and manage its ad monetization. Prior to that, the TV service used Live Rail.<\/p>\n

Both vendors offer technology to help the sale of ad space using automated systems.<\/p>\n

But Fleming’s Hulu shares something in common with many other publishers that have embraced these methods – a modicum of control.<\/p>\n

At the start of the year, it launched an invite-only\u00a0private marketplace<\/a>, meaning it gets to pre-specify the kinds of demand sources it will open its ad inventory to. That is in contrast to the way in which programmatic made its debut, as a free-for-all auction for unsold display ads.<\/p>\n

“We’re going to do it in a very private, curtailed way,” Fleming adds. “There is no concept of a remnant provider, reselling our inventory. Everyone has to be blessed and driven through the Hulu process.”<\/p>\n

“We identify the brands before they come in, so that they’re attributed to the appropriate seller on our side.<\/p>\n

“We can category block appropriately, so people maintain their category exclusivity within pods.<\/p>\n

“There’s no semblance of a DSP (demand-side platform) just hanging on and reselling, and an always-on situation.<\/p>\n

This segment is part of Beet.TV’s coverage of the IAB Annual Leadership Meeting 2019, Phoenix.\u00a0 \u00a0This series is sponsored by Telaria<\/a>.\u00a0 Please find additional videos from the series on this page<\/a>.\u00a0<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"

PHOENIX — Advertisers want choice, control and freedom to buy using automated technology platforms – but that doesn’t mean Hulu is going to let just anyone purchase its ad space. The online TV provider last month\u00a0announced\u00a0it made $1.5 billion in ad revenue last year, a rise of 45%, increasing it advertiser base by 50%. In […]<\/p>\n","protected":false},"author":15,"featured_media":59040,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"mc4wp_mailchimp_campaign":[]},"categories":[7843],"tags":[4285,7850],"_links":{"self":[{"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/posts\/59034"}],"collection":[{"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/comments?post=59034"}],"version-history":[{"count":0,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/posts\/59034\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/media\/59040"}],"wp:attachment":[{"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/media?parent=59034"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/categories?post=59034"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/tags?post=59034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}