Skip to content
This repository has been archived by the owner on Jun 24, 2022. It is now read-only.

Intervention: Hide ads that load too many bytes #65

Closed
johnivdel opened this issue Dec 20, 2018 · 5 comments
Closed

Intervention: Hide ads that load too many bytes #65

johnivdel opened this issue Dec 20, 2018 · 5 comments

Comments

@johnivdel
Copy link

Users have little control over what types of ads get shown to them, there are existing specifications (IAB) meant to prevent ads from abusing system resources (network, cpu). The motivation is to punish ad content using too many resources and move the ad ecosystem to a better place for users.

If an advertisement uses too many bytes to load resources, add a non-observable overlay on top of the ad, which blocks the ad and displays a message noting the ad has been hidden. Non-observable is defined as the page/frame being unaware that it is there (e.g. IntersectionObserver would not be aware of the overlay). While the overlay is shown the ad cannot receive user input. If the user clicks on the overlay it would be removed. This would push advertising networks to serve creatives that avoid triggering the intervention and monetize properly.

A non-observable intervention is ideal because it does expose any privacy issues or security vulnerabilities, such as those seen with sizepolicy. This of course sacrifices transparency for developers and direct savings for users.

@jkarlin
Copy link

jkarlin commented Jan 10, 2019

To be clear, "if the user clicks on the overlay it would be removed" means the overlay would be removed and the ad would appear again, right? I think this is an interesting approach as it avoids the privacy issue. The advertiser won't have a direct feedback loop so they'll be forced to be conservative in creating ad creatives. @igrigorik, @wseltzer, @domenic, and @annevk might be interested in this as it pertains to resource constraints, performance, and advertising.

@johnivdel
Copy link
Author

To be clear, "if the user clicks on the overlay it would be removed" means the overlay would be removed and the ad would appear again, right?

Correct. Because we do not actually interact with the frame at all, the ad will be in whatever state it would have been if the intervention did not trigger.

@igrigorik
Copy link
Member

Interesting!

The enforcement and policy settings would be determined by the UA? That is, who sets the criteria that would trigger this? The absence of any meaningful feedback to content owner is not great, but I guess the premise is that owner of the creative would see lower ROI and use that as an indirect signal?

@johnivdel
Copy link
Author

The UA would set the criteria.

The absence of any meaningful feedback to content owner is not great, but I guess the premise is that owner of the creative would see lower ROI and use that as an indirect signal?

That is correct for CPC (Cost per click) ads. For CPM ads (Cost per impression), they will not see a decreased ROI but will see decreased click rates.

It could be possible to report under some circumstances, such as no 3rd party resources within the ad. There could also be an opt-in policy/header, along the lines of "allow-size-reporting", that allows reporting if all 3rd party resources loaded by the ad have the policy/header set.

@johannhof
Copy link
Member

(As noted in #72, we intend to archive this repository and are thus triaging and resolving all open issues)

I think this can be folded into heavy ads intervention (see #68 (comment)) but correct me if I'm wrong.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants