FW: Brainfood – Adbutler
This is a multipart message in MIME format. ——=_NextPart_000_003D_01DAA6AF.D2CE3D30 Content-Type: multipart/alternative; boundary=”—-=_NextPart_001_003E_01DAA6AF.D2CE3D30″ ——=_NextPart_001_003E_01DAA6AF.D2CE3D30 Content-Type: text/plain; charset=”utf-8″ Content-Transfer-Encoding: quoted-printable Please =CE=B5=CE=BD=CE=B7=CE=BC=CE=B5=CF=81=CF=89=CF=83=CE=B5 = =CE=BC=CE=B5 =CE=B1=CE=BD =CE=BB=CF=85=CE=B8=CE=B7=CE=BA=CE=B1=CE=BD = =CE=BF=CE=BB=CE=B1 =CE=BC=CE=B5 =CE=B1=CF=85=CF=84=CE=B1 = =CF=80=CE=BF=CF=85 =CF=83=CE=BF=CF=85 = =CE=B5=CF=83=CF=84=CE=B5=CE=B9=CE=BB=CE=B5 =CE=95=CE=B4=CF=89 =CE=BA=CE=B1=CE=B9 =CE=B7 = =CE=B1=CF=80=CE=B1=CE=BD=CF=84=CE=B7=CF=83=CE=B7 =CF=84=CE=BF=CF=85 =CE=A4=CE=B7=CE=BD =CE=BF=CF=80=CE=BF=CE=B9=CE=B1 = =CF=86=CF=85=CF=83=CE=B9=CE=BA=CE=B1 =CE=B4=CE=B5=CE=BD =CE=B8=CE=B1 = =CE=BA=CE=B1=CE=BD=CF=89 =CE=B4=CE=B5=CE=BA=CF=84=CE=B7 =20 =20 Tasos Vogiatzis Managing Director =20…
This is a multipart message in MIME format.
——=_NextPart_000_003D_01DAA6AF.D2CE3D30
Content-Type: multipart/alternative;
boundary=”—-=_NextPart_001_003E_01DAA6AF.D2CE3D30″
——=_NextPart_001_003E_01DAA6AF.D2CE3D30
Content-Type: text/plain;
charset=”utf-8″
Content-Transfer-Encoding: quoted-printable
Please =CE=B5=CE=BD=CE=B7=CE=BC=CE=B5=CF=81=CF=89=CF=83=CE=B5 =
=CE=BC=CE=B5 =CE=B1=CE=BD =CE=BB=CF=85=CE=B8=CE=B7=CE=BA=CE=B1=CE=BD =
=CE=BF=CE=BB=CE=B1 =CE=BC=CE=B5 =CE=B1=CF=85=CF=84=CE=B1 =
=CF=80=CE=BF=CF=85 =CF=83=CE=BF=CF=85 =
=CE=B5=CF=83=CF=84=CE=B5=CE=B9=CE=BB=CE=B5
=CE=95=CE=B4=CF=89 =CE=BA=CE=B1=CE=B9 =CE=B7 =
=CE=B1=CF=80=CE=B1=CE=BD=CF=84=CE=B7=CF=83=CE=B7 =CF=84=CE=BF=CF=85
=CE=A4=CE=B7=CE=BD =CE=BF=CF=80=CE=BF=CE=B9=CE=B1 =
=CF=86=CF=85=CF=83=CE=B9=CE=BA=CE=B1 =CE=B4=CE=B5=CE=BD =CE=B8=CE=B1 =
=CE=BA=CE=B1=CE=BD=CF=89 =CE=B4=CE=B5=CE=BA=CF=84=CE=B7
=20
=20
Tasos Vogiatzis
Managing Director
=20
www.brainfoodmedia.gr | =
www.brainfood.gr=20
Alfavita.gr | Allyou.gr | Avopolis.gr | Botrini.gr | Childit.gr | =
Glykouli.gr
Enwsi.gr | Epixeiro.gr | Platform.gr | Tetrapodo.gr | Thecaller.gr | =
Theopinion.gr
=20
P. 212-1056743 | M: +306940715510
=20
=20
From: Rob Janes =20
Sent: Tuesday, May 14, 2024 10:46 PM
To: Tasos Vogiatzis
Cc: Mark Webster ; Rob Janes =
; nickh@brainfoodmedia.gr; =
ge.michalopoulos@brainfoodmedia.gr
Subject: Re: Brainfood – Adbutler
=20
Tasos, we appreciate your detailed response and understand your =
frustrations. We share your sense of urgency.
=20
However, there might be some misunderstandings or miscommunications =
about the roles and responsibilities of different platforms in your tech =
stack.
=20
First, let me cover the consent and ad-serving side of things and TCF.
=20
If a user does not give consent under the Transparency and Consent =
Framework (TCF), a consent string (also known as a TC string) will still =
exist, but it will reflect the user’s choices. The consent string is a =
standardized way to encode and transmit the user’s consent preferences, =
and it is essential for communicating these preferences across the ad =
tech ecosystem.
=20
The consent string encodes the user’s choices regarding the processing =
of their personal data, including whether they have given or withheld =
consent for various purposes and to specific vendors.
=20
When a user does not give consent, the consent string will indicate =
this. It will have specific bits to show that consent is not granted for =
certain processing purposes and vendors.
The string may also include the user’s choices regarding legitimate =
interest claims, where applicable.
=20
A Consent Management Platform (CMP) generates the consent string based =
on the user’s interactions with the consent notice. The CMP encodes the =
user’s preferences into the consent string, whether those preferences =
include granting or denying consent.
=20
The consent string is passed along with ad requests to the ad server to =
ensure that all parties in the ad delivery chain (advertisers, DSPs, =
SSPs, ad exchanges, etc.) can interpret and respect the user’s =
preferences.
=20
Ad tech vendors use the consent string to determine whether they can =
process personal data for targeted advertising, tracking, and other =
purposes. Consent is based on tracking of personal data and is =
independent of the =E2=80=98serving=E2=80=99 of ads.
=20
This is how AdButler is built by design. We accept the consent string =
and then pass it along to your demand sources to let them determine =
whether or not they want to participate in this auction based on the =
user’s consent decision.
=20
AdButler was listed as a TCF vendor for many years but withdrew in =
February of 2022 when Belgium and other companies decided that the TCF =
spam regulations were illegal. While this had been resolved in 2023, we =
had not opted to renew our TCF registration.
=20
As TCF is a framework that uses self-attestation, our platform was and =
remains fully TCF compliant by passing along the consent string to =
demand partners. However, we did not renew registration with the IAB to =
be listed on the TCF vendor list. We can certainly revisit this, as we =
think it makes sense from a business perspective to be included on this =
list once again. Still, I want to reiterate that it does not change =
functionality in AdButler as we are already TCF compliant.=20
=20
The biggest takeaway here may be a misunderstanding regarding your =
expectations of the ad server vs. the principles of GDPR and TCF. TCF =
is around tracking the user and demand partners using their personal =
data to show targeted ads, but it does not mean that all ads are =
prevented. That=E2=80=99s why AdButler sends the consent string and the =
bid request to our demand partners. If the user wanted to avoid ads =
altogether, they wouldn=E2=80=99t use =E2=80=98consent=E2=80=99 as a =
means of blocking ads; they would use an ad-blocker.=20
=20
Steps Forward
=20
As for steps forward, I think your two options make sense, and we would =
certainly like to continue working with you.
=20
Option 1 – Continue the Agreement with the following understanding:
1. AdButler will not issue another invoice until the successful OpenRTB =
request between AdButler AdForm works as intended. (This should be =
good to go; we=E2=80=99ve modified PMP deals as well. I will send a =
follow-up technical email)
2. We will give an additional 30-day grace period after that time in =
which we will not issue a bill.
3. As you requested, we will credit the account with $1250 towards the =
first bill for the prepaid priority support over the holidays.
4. AdButler plans to participate in the vendor list for TCF again, =
though the timeline will depend on the IAB EU’s review and approval.
5. AdButler has implemented a feature where if the user has given =
consent for purposes 1, 2, 3, 4, and 7 of the TCF framework, we will =
execute the decision logic as usual. However, if the user has not given =
consent to any of these purposes, AdButler will not perform any decision =
logic and will return no ads at all, including direct, non-personalized =
ads. This means if the user does not consent, no ads from Brainfood will =
be served, regardless of whether they are programmatic, direct, =
self-serve, etc. I=E2=80=99ve included a quick summary table at the =
bottom outlining consent purposes according to the TCF.
Option 2 – Termination of Agreement:
It does sound like you=E2=80=99ve already vetted Epom, and we understand =
and respect your decision to switch. We will reimburse you for your =
prepaid amount to date and terminate the partnership here.
=20
=20
TCF Consent Purposes for Reference in Option 1.5:
Purpose Consents (10)
[1] Store and/or access information on a device: true [2] Use limited data to select advertising: true [3] Create profiles for personalized advertising: true [4] Use profiles to select personalized advertising: true [5] Create profiles to personalize content: true [6] Use profiles to select personalized content: true [7] Measure advertising performance: true [8] Measure content performance: true [9] Understand audiences through statistics or combinations of data from =different sources: true [10] Develop and improve services: true
=20
Purpose Legitimate Interests (9)
[2] Use limited data to select advertising: true [3] Create profiles for personalized advertising: true [4] Use profiles to select personalized advertising: true [5] Create profiles to personalize content: true [6] Use profiles to select personalized content: true [7] Measure advertising performance: true [8] Measure content performance: true [9] Understand audiences through statistics or combinations of data from =different sources: true [10] Develop and improve services: true
=20
=20
Let me know which option you decide.
=20
-Rob
=20
=
=20
=20
_____ =20
=20
Rob Janes
Head of Product
Find me on Social Media!
Tweets by TheRobJanes
https://www.linkedin.com/in/robert-alexander-janes/
=
=20
AdButler =20
rob@adbutler.com =20
=20
=20
=20
Sent via Superhuman =20
=20
=20
On Tue, May 14, 2024 at 3:25 AM, Tasos Vogiatzis <tv@brainfoodmedia.gr =
> wrote:
Dear Mark and Rob,
=20
After several unsuccessful attempts (emails on March, April 4, 11, etc) =
to let you understand the seriousness of the situation, but also to find =
an overall solution for the 6 months’ prepayment (which of course is -in =
no way- your assurance that we will not be billed further in these 6 =
months, for something that we have already been invoiced for and paid!) =
and based on Rob’s last email (which ends in =E2=80=9CAs it stands at =
the moment, everything from the AdButler side, except for the PMP deal =
ID field from AdButler is working as expected=E2=80=9D), I am forced to =
state and list all details and evidence of what has happened the last 5 =
months and the progress. The picture presented by you is rather =
embellished -to say the least- and in no way even comes close to the =
reality of a working adserver/SSP that we should have had in our hands =
for 5 months now.=20
=20
Unfortunately, I have spent a lot of hours and days (off my valuable =
time) to note and explain all facts, developments, issues – firstly =
internally, to my partners, and secondly/mainly to you. The reason is =
that no matter how many friendly/unofficial/personal attempts have been =
made on my part, either to explain the magnitude of the damage/losses of =
the company from the unresolved issues and the delay, or to find a =
compromise solution for the prepayment (which was surely a big mistake =
from our part), or to push for faster delivery of an ad server that will =
work on (basic and non basic features) what we have agreed on from day 1 =
and not month 5, not only are they not appreciated, but they go =
unnoticed, at least in terms of their substance and what should follow =
in terms of speed of resolution, attitude towards the customer (which =
not is of course not =E2=80=9Cworking as expected=E2=80=9D on the 5th =
month) and of course in the commercial part, in which we have =
practically prepaid millions of requests, without recompense.=20
=20
What we have agreed and prepaid
=20
January (1 to 31)
Priority team on your side so that any issues can be addressed promptly.
[=E2=80=9CFirstly, in order to get you set up for at least the initial =
stages for the MVP process, you will need a priority team on our side so =
that any issues can be addressed promptly.]
January
Developing period with 1M requests included
February
Developing period with 1M requests included
March
End of Development =E2=80=93 everything working and beginning (at 1st of =
March) of Testing period on white label / own domain solution
$1500 minimum usage cost PREPAID or request/usage costs according to =
plan (whichever is bigger)
April
2nd month Testing period
$2500 minimum usage cost PREPAID or request/usage costs according to =
plan (whichever is bigger)
May
All network integrated, Prepaid $3000 minimum costs
June=20
All network integrated, Prepaid $3000 minimum costs
=20
=C2=B7 From the 1st day (developing month) we should have had a =
fully working API enabled solution for our development phase.
=C2=B7 We should have had a fully working white-label solution =
on our domain.
=20
Where we are now:
=20
Practically, between the 1st and 2nd month
=C2=B7 In no way end of development (we still can=E2=80=99t =
implement PMP deals)
=C2=B7 In no way everything working (March)
=C2=B7 We can=E2=80=99t be charged for $1500 minimum cost =
PREPAID for requests (March)
=C2=B7 Until mid of April we only had a working demo and not a =
fully working white-label solution on our domain.
=20
We also have paid for 1 month =E2=80=9CPriority team on your side so =
that any issues can be addressed promptly=E2=80=9D and this payment was =
not present at any deal in any email until we saw it in the contract. In =
any case, I agreed to pay these $1250 for the first month, but actually:
=20
=C2=B7 We lost nearly 10 days with your (dedicated?) team being =
absent for holidays and actually there are emails referring to =
=E2=80=9Creduced=E2=80=9D support team for this period
=C2=B7 We never had prompt replies
=C2=B7 Issued were not addressed/resolved or anything promptly.
=20
Several issues (to offer an idea):
1. Sandbox API Access [reported 1/2/2024] – [solved 13/3/2024]
2. Vast 4 Wrapper Bug Ad item [reported 1/2/2024] – [solved =
20/03/2024]
3. Postal Code Targeting [reported 17/1/2024] – Hasn’t been solved =
– We found another way
4. Get Tags with Http bug [reported 1/2/2024] – [solved =
25/04/2024]
5. Get zone tags with http – Since moving the white label =
[reported 25/04/2024] – [solved 2/05/2024]
6. Adbutler Passback code inside Adbutler zone tag not working in =
Native [Hasn=E2=80=99t been solved and we can=E2=80=99t work with =
websites that will have no option of passback in their programmatic =
zones)
7. Get Vast tags through API =E2=80=93 [reported 25/04/24] – =
[solved 13/05/24]
8. PMP deals not working =E2=80=93 blocked by 9
9. Adform RTB rerquest for Vast [reported 12/02/2024] =
=E2=80=93 [solved ???]
10. User syncing issue – [to be solved]=20
and some more, as the domain referrer, the passing of the values to the =
CMP (solved at 10th of May), the gdpr and more.
I understand that you may find several excuses for the lack of =
connection with Adform, but having a fully working white label solution =
with all API features working and ad server / PMP / Open Marketplace is =
something we might expect by the end of the month May hopefully.
(At the end of this email) I will also take the time and space to =
explain some of the existing issues and their importance, because this =
idea/image you present that =E2=80=9Cexcept PMP everything is working as =
expected=E2=80=9D, is not accurate at all. And we can spend hours and =
many lines stating and explaining what has happened all these months and =
why we are in month 1 and not in month 5. In fact, with PMP deals on =
hold, all this discussion would be actually useless, but I will try it.
=20
Losses/Damages assessed until now if we stop the collaboration: $64,000 =
+ $10,750 (prepayment) =3D $75K
=20
* We have a dedicated team of 5 developers, struggling for 5 =
months now
* a dedicated product manager
* A trial with Adform that has been ended and we now pay minimum =
costs
* Commercial losses (campaigns that will not run, one of them was =
the European Parliament campaign commissioned to us by Havas Media) and =
delay losses have yet to be assessed.
=20
Current state
=20
* We have started or restarted discussions and presentations with =
other ad servers (you can see the list at the GDPR compliance part of =
this email)
* Some of them (with Epom first) can cover us in everything, with =
written agreement, from gdpr to pmp connection with adform, real time =
support =E2=80=93and (most important) we don=E2=80=99t even need to pay =
brid.tv for the video player, they have a natively =
working video player.
* A part of our development team is studying their API and =
evaluating and the others are still committed to this
=20
Solutions
=20
Mainly based on the options you offer in your April email, there are two =
roads:
=20
=C2=B7 Stop the collaboration, terminate the agreement as you =
propose, and we lose 5 months work and 5 months time, plus 2 months in =
order to evaluate/agree/test the next adserver/white label SSP. This =
internal damage has been assessed at about $100K. As the management team =
and partners are not willing to throw away these months of work, the =
decision is (if we are led to this solution) to proceed with a detailed =
evaluation of the whole situation and the damages and surely not to lose =
$100,000 and 7 months of work just like that. It might be very simple =
for you to just disconnect everything, but (believe me) it won=E2=80=99t =
be so easy for me (personally, as I believed in this collaboration and =
presented it as the best possible) and mainly for the company.=20
=20
=C2=B7 Go on with current collaboration and=20
a. Have all issues resolved until the end of the month (31th of May),=20
b. Written acknowledgment that from June 1st we will practically be on =
February 1st of our contract, which means an extension of our contract =
from June 30th to November 30th. It is understood that all prepayments =
(which essentially concern requests) do not include income from Open =
Marketplace and PMP deals for which you will normally receive the rates =
we have agreed (3% up to 100000 etc.)
c. =CE=99ssue of credit invoice and refund for the $1250 of dedicated =
and prompt support that never came. Alternatively, and if everything is =
working as expected, we can use it as a deposit/amount for your =
(hopefully) rates payment for the Open Marketplace.
=20
At this stage, and after what has gone before, we cannot be left without =
options, therefore we proceed with both scenarios.
Firstly, we will wait until the end of the week for your feedback, =
agreement (or/and solutions), and secondly, in any case, even in the =
scenario of continuing our collaboration, we have to wait for all the =
issues to be resolved – even now.
In case they are not resolved, or further delayed due to your obvious =
lack of development and support staff, to my great dismay, I have no =
option than to protect my company. You would do that in my position too.
And in your position, if all this had happened from our part (in any =
client), I wouldn’t put so simply on the table the option of simply =
terminating the contract and return the prepayment. It will be a complex =
and arduous process, in which no self-respecting company is going to =
walk away from whatever (big) damage they have suffered. I think you may =
understand that.
=20
Explaining 2 of the issues and why we can=E2=80=99t collaborate without =
their solution.
=20
GDPR compliance
=20
The purpose of CMP is to ask for a visitor’s consent(s), store it, and =
pass these consents to an ad server. Most publishers at this moment in =
Europe use CMPs compatible with the technical standard of the IAB =
Transparency and Consent Framework (TCF v2). The ad server will get =
consent from CMP and change its behavior accordingly. Full support of =
CMPs and GDPR compliance means that the ad server is not only passing =
and accepting parameters, but cooperates and supports consent management =
platforms (CMPs) compatible with the technical standard of the IAB =
Transparency and Consent Framework (TCF).
Moreover (if have been implemented might have simplified the process), =
the IAB Europe Transparency and Consent Framework (TCF) has simplified =
your/our work with accredited TCF Vendors list. With an annual fee of =
only =E2=82=AC1,575 and a Compliance questionnaire on =
https://iabeurope.eu/join-the-tcf/, Adbutler could have been in the list =
of Global Vendor List (GVL), which is open for Vendors to apply for =
approval to participate in the IAB Europe Transparency and Consent =
Framework (TCF).
Of course, being a member of this Global Vendor List means respecting =
the rules, but this simplifies the process also for publishers, as they =
have the chance by default to handle all IAB approved vendors on their =
CMP and perform actions automatically (blocking/approving), which is =
what it happens right now.
Project Agora, for example, which is a greek programmatic platform, is =
already listed.
Brid is listed for their ad manager / vendor features.
All API enabled / white label ad servers that we were having discussions =
are already registered (Admixer, Exads, Epom, Equativ, Smartyads).
Adbutler is not listed and (additionally or not) does not do anything on =
their side even if consent is not given by the user.
=20
Most important is that all competitors, starting from Google Ad Manager =
and ending up in the companies mentioned before, are fully compliant.
The logic that we record the information but do not do anything (rather =
than pass it back) is not functional. The reason is that although at the =
OpenRTB level this can work (i.e. the demand partner decides whether or =
not to display the ad), at the direct ads level, it cannot work. The =
publisher cannot turn into an ad tech company nor does it have a way to =
cut the ad by itself so that it is not illegal when the user does not =
give consent. We put a burden of tech responsibility on publishers that =
cannot be attributed in any case and that other ad managers offer.
So, we fully cancel all direct ad capabilities, which is the main =
purpose of an adserver.
=20
Finally, on our discussions this week with Epom, we understand that the =
ad server (at least theirs), does not throw away the consent information =
or just pass it back, but they have a settings feature where the user =
can decide to display or not a banner ad if the user hasn=E2=80=99t =
given their consent. Be sure that most publishers are not only fully =
aware of GDPR laws, but they won=E2=80=99t be willing to use an ad =
server that does display ads without consent =E2=80=93 they =
won=E2=80=99t risk any action that will put them into a danger of very =
large fines. Practically, our ad server is useless in Europe for =
publishers that would like to use it out of the box.
=20
SSP / Programmatic
As you already know, the main use of the adserver in our case is the SSP =
feature. As we already have a network fully working on PMP deals and =
Open Marketplace on Vidverto, we can’t transfer any site into our =
platform, not only if extensive tests will have been made, but firstly =
if we are ensured that both Open Marketplace and PMP deals are working. =
Finally, web development without being able to have data cannot be put =
in serious progress.=20
As for the second part (PMP Deals), which is the main point of our =
collaboration with Adform, as it was already a demand partner / PMP ad =
tech provider for PMP deals through Vidverto, you have admitted that (on =
our 5th month) is not working and we are waiting for a solution.
As for the first part (OpenRTB), there are 2 different cases:
=C2=B7 Display campaigns. =E2=80=9CIf the adserver has already =
identified an AdForm user ID for this user, it will pass that ID into =
the OpenRTB request. If we do not have an AdForm user ID for this user, =
this request will cookie-sync the user so that all subsequent requests =
will have that user=E2=80=99s ID=E2=80=9D. So, this means that for the =
first visit, the user will not be available for OpenRTB requests. Losing =
this inventory opportunity us totally unacceptable. Just to give you an =
idea of what this means, we quote the numbers from google analytics of =
one of the sites we work with, for the last 4 weeks (28 days report from =
GA):
=09
Total
Unique
page_view
8.704.986
2.403.807
=09
session_start
6.866.302
2.439.859
=09
user_engagement
6.628.517
1.814.244
=09
first_visit
1.598.929
1.271.643
=09
=20
=C2=B7 1,271,643 out of 2,403,807 total users visited the site =
for the first time. This is 47%. Some of them will not have the chance =
to see a single ad if they are in the bounce rate portion. Would you be =
willing to lose all this ad traffic, especially if you are already in a =
platform that doesn’t have this limitation? In this case we are a weak =
competitor to our own existing platform and the whole commercial model =
will surely collapse. Moreover, this corresponds to at least 17% loss of =
income from lost advertising inventory, which is much more actually as =
loss, as unique users make the difference and not many repeated =
impressions.`
=C2=B7 VAST campaigns. Out of the Box and Industry Standard you =
suggest: The out-of-the-box and industry solution here that is the way =
it=E2=80=99s solved by other publishers using any ad platform is a =
cookie-syncing pixel placed on the publisher page before any other ad =
calls. This pixel syncs the user, and all other ad calls can read that =
cookie.=20
=20
The problem there is that we limit the use of the platform as a fully =
working ad server (which clearly does not do the job, as already =
specified and explained), built on the publisher. Actually, it =
doesn=E2=80=99t work like that on ad networks that use a portion of the =
ad inventory of the publisher. We are not publishers. In all other =
cases, we have publishers having their own ad server solutions, mostly =
free and fully GDPR compliant (Google Ad Manager). We have a =
collaboration with over 100 publishers, by sending a single zone tag to =
them and this tag is implemented only on the place it needs to be =
inserted. No access or demand to have access on head, which will not be =
acceptable and will have a lot more issues (interfering with their code =
and the lack of implementing simple things on their side), especially =
for a single video ad placements. All, but all, but all, video ad =
monetization services we know do not place anything on the head, nor =
wait until the second view/request to be able to sync the user. =
Moreover, the second solution (sneaking AdButler user syncing pixel into =
one of the VAST tracking event URLs, so when one of the VAST tracking =
events gets fired, as an example, the =E2=80=9CVideo Start=E2=80=9D =
event, we can also call our user sync URL and sync the user. This means =
all subsequent ad requests would include the AdForm user ID) means that =
the first ad request for a unique visitor to a page will not be synced =
to that AdForm user, so we lose also the first impression in times of =
inventory, which is also a 17% (all inventory) / 47% (first visit) loss. =
=20
=C2=B7 =CE=91 very rough but not completely correct (*) solution =
would be to set the user sync cookie to fire in all Open Marketplace and =
PMP enabled zones (even on native that serve video player / Brid tag) as =
a tag/pixel before anything else happens. This would solve the display =
and native issue as there would always be pre-recognition, it would =
solve the brid video player issue as there would always be =
pre-recognition but it would not solve the issue in vast campaigns that =
would play by users with another player. But we can live with that, as =
we want Open Marketplace and PMP deals for VAST campaigns to be =
implemented through our video player (Brid).=20
=C2=B7 But, it is very important to avoid useless requests, so =
Adbutler could by default recognize (for positions that are Open =
Marketplace and PMP enabled) the new user (frequency cap 1), and call =
Adbutlers user sync URL and sync the user.
=20
* This is not a completely correct (*) solution as we will have to add =
this user sync URL call for every DSP we will collaborate. At this stage =
it’s only Adform, but the purpose of the SSP is to collaborate with many =
DSPs, so in this case we would have to add a pixel from all providers =
before the first view.
=20
=20
=20
=20
Tasos Vogiatzis
Managing Director
=20
www.brainfoodmedia.gr | =
www.brainfood.gr=20
Alfavita.gr | Allyou.gr | =
Avopolis.gr | Botrini.gr | =
Childit.gr | Glykouli.gr =20
Enwsi.gr | Epixeiro.gr | =
Platform.gr | Tetrapodo.gr =
| Thecaller.gr | Theopinion.gr =
=20
=20
P. 212-1056743 | M: +306940715510
=20
=20
——=_NextPart_001_003E_01DAA6AF.D2CE3D30
Content-Type: text/html;
charset=”utf-8″
Content-Transfer-Encoding: quoted-printable
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
Please =CE=B5=CE=BD=CE=B7=CE=BC=CE=B5=CF=81=CF=89=CF=
=83=CE=B5 =CE=BC=CE=B5 =CE=B1=CE=BD =
=CE=BB=CF=85=CE=B8=CE=B7=CE=BA=CE=B1=CE=BD =CE=BF=CE=BB=CE=B1 =
=CE=BC=CE=B5 =CE=B1=CF=85=CF=84=CE=B1 =CF=80=CE=BF=CF=85 =
=CF=83=CE=BF=CF=85 =
=CE=B5=CF=83=CF=84=CE=B5=CE=B9=CE=BB=CE=B5
=CE=95=CE=B4=CF=89 =CE=BA=CE=B1=CE=B9 =CE=B7 =
=CE=B1=CF=80=CE=B1=CE=BD=CF=84=CE=B7=CF=83=CE=B7 =
=CF=84=CE=BF=CF=85
=CE=A4=CE=B7=CE=BD =
=CE=BF=CF=80=CE=BF=CE=B9=CE=B1 =CF=86=CF=85=CF=83=CE=B9=CE=BA=CE=B1 =
=CE=B4=CE=B5=CE=BD =CE=B8=CE=B1 =CE=BA=CE=B1=CE=BD=CF=89 =
=CE=B4=CE=B5=CE=BA=CF=84=CE=B7
Tasos Vogiatzis
Managing Director
www.brainfoodmedia.gr | www.brainfood.gr
Alfavita.gr | Allyou.gr | Avopolis.gr | Botrini.gr | Childit.gr | =
Glykouli.gr
Enwsi.gr | Epixeiro.gr | Platform.gr | Tetrapodo.gr | Thecaller.gr | =
Theopinion.gr
P. 212-1056743 | M: +306940715510
From: Rob Janes =
<rob@adbutler.com>
Sent: Tuesday, May 14, 2024 10:46 =
PM
To: Tasos Vogiatzis =
<tv@brainfoodmedia.gr>
Cc: Mark Webster =
<markwebster@outlook.com>; Rob Janes <rob@adbutler.com>; =
nickh@brainfoodmedia.gr; =
ge.michalopoulos@brainfoodmedia.gr
Subject: Re: Brainfood – =
Adbutler
Tasos, we appreciate your detailed response and =
understand your frustrations. We share your sense of =
urgency.
However, there might be some misunderstandings or =
miscommunications about the roles and responsibilities of different =
platforms in your tech stack.
First, let me cover the consent and ad-serving side =
of things and TCF.
If a user does not give consent under the Transparency =
and Consent Framework (TCF), a consent string (also known as a TC =
string) will still exist, but it will reflect the user’s choices. The =
consent string is a standardized way to encode and transmit the user’s =
consent preferences, and it is essential for communicating these =
preferences across the ad tech ecosystem.
The consent string encodes the user’s choices =
regarding the processing of their personal data, including whether they =
have given or withheld consent for various purposes and to specific =
vendors.
When a user does not give consent, the consent string =
will indicate this. It will have specific bits to show that consent is =
not granted for certain processing purposes and =
vendors.
The string may =
also include the user’s choices regarding legitimate interest claims, =
where applicable.
A =
Consent Management Platform (CMP) generates the consent string based on =
the user’s interactions with the consent notice. The CMP encodes the =
user’s preferences into the consent string, whether those preferences =
include granting or denying consent.
The consent string is passed along with ad requests to =
the ad server to ensure that all parties in the ad delivery chain =
(advertisers, DSPs, SSPs, ad exchanges, etc.) can interpret and respect =
the user’s preferences.
Ad tech vendors use the consent string to determine =
whether they can process personal data for targeted advertising, =
tracking, and other purposes. Consent is based on tracking of personal =
data and is independent of the =E2=80=98serving=E2=80=99 of =
ads.
This is how AdButler is built by design. We =
accept the consent string and then pass it along to your demand sources =
to let them determine whether or not they want to participate in this =
auction based on the user’s consent =
decision.
AdButler was listed as a TCF vendor for many years but =
withdrew in February of 2022 when Belgium and other companies decided =
that the TCF spam regulations were illegal. While this had been =
resolved in 2023, we had not opted to renew our TCF =
registration.
As TCF is a framework that uses self-attestation, our =
platform was and remains fully TCF compliant by passing along the =
consent string to demand partners. However, we did not renew =
registration with the IAB to be listed on the TCF vendor list. We can =
certainly revisit this, as we think it makes sense from a business =
perspective to be included on this list once again. Still, I want to =
reiterate that it does not change functionality in AdButler as we are =
already TCF compliant.
The biggest takeaway here may be a misunderstanding =
regarding your expectations of the ad server vs. the principles of GDPR =
and TCF. TCF is around tracking the user and demand partners using =
their personal data to show targeted ads, but it does not mean that all =
ads are prevented. That=E2=80=99s why AdButler sends the consent =
string and the bid request to our demand partners. If the user =
wanted to avoid ads altogether, they wouldn=E2=80=99t use =
=E2=80=98consent=E2=80=99 as a means of blocking ads; they would use an =
ad-blocker.
Steps Forward
As for steps forward, I think your two options make =
sense, and we would certainly like to continue working with =
you.
Option 1 – Continue the Agreement with the =
following understanding:
- AdButler will not issue another invoice until the =
successful OpenRTB request between AdButler <> AdForm works as =
intended. (This should be good to go; we=E2=80=99ve modified PMP deals =
as well. I will send a follow-up technical email) - We will give an additional 30-day grace period after that =
time in which we will not issue a bill. - As you requested, we will credit the account with $1250 =
towards the first bill for the prepaid priority support over the =
holidays. - AdButler plans to participate in the vendor list for TCF =
again, though the timeline will depend on the IAB EU’s review and =
approval. - AdButler has implemented a feature where if the user has =
given consent for purposes 1, 2, 3, 4, and 7 of the TCF framework, we =
will execute the decision logic as usual. However, if the user has not =
given consent to any of these purposes, AdButler will not perform any =
decision logic and will return no ads at all, including direct, =
non-personalized ads. This means if the user does not consent, no ads =
from Brainfood will be served, regardless of whether they are =
programmatic, direct, self-serve, etc. I=E2=80=99ve included a quick =
summary table at the bottom outlining consent purposes according to the =
TCF.
Option 2 – =
Termination of Agreement:
It does sound like you=E2=80=99ve already vetted Epom, =
and we understand and respect your decision to switch. We will reimburse =
you for your prepaid amount to date and terminate the partnership =
here.
TCF Consent Purposes for Reference in Option =
1.5:
Purpose Consents =
(10)
[1] Store and/or =
access information on a device: true
[2] Use limited data to select advertising: =
true
[3] Create profiles =
for personalized advertising: true
[4] Use profiles to select personalized advertising: =
true
[5] Create profiles =
to personalize content: true
[6] Use profiles to select personalized content: =
true
[7] Measure =
advertising performance: true
[8] Measure content performance: =
true
[9] Understand =
audiences through statistics or combinations of data from different =
sources: true
[10] Develop =
and improve services: true
Purpose Legitimate Interests =
(9)
[2] Use limited data =
to select advertising: true
[3] Create profiles for personalized advertising: =
true
[4] Use profiles to =
select personalized advertising: true
[5] Create profiles to personalize content: =
true
[6] Use profiles to =
select personalized content: true
[7] Measure advertising performance: =
true
[8] Measure content =
performance: true
[9] =
Understand audiences through statistics or combinations of data from =
different sources: true
[10] Develop and improve services: =
true
Let me know which option you =
decide.
-Rob
Rob =
Janes
Head of =
Product
=
Find me on Social Media!
https://twitter.com/TheRobJanes
https://www.linkedin.com/in/robert-alexander-janes/=
=
=
=
Sent via Superhuman
On =
Tue, May 14, 2024 at 3:25 AM, Tasos Vogiatzis <tv@brainfoodmedia.gr> =
wrote:
Dear Mark and =
Rob,
After several unsuccessful =
attempts (emails on March, April 4, 11, etc) to let you understand the seriousness of the =
situation, but also to find an overall solution for the 6 months’ =
prepayment (which of course is -in no way- your assurance that we will =
not be billed further in these 6 months, for something that we have =
already been invoiced for and paid!) and based on Rob’s last email =
(which ends in =E2=80=9CAs it stands at the moment, everything from the =
AdButler side, except for the PMP deal ID field from AdButler is working =
as expected=E2=80=9D), I am forced to state and list all details and =
evidence of what has happened the last 5 months and the progress. The =
picture presented by you is rather embellished -to say the least- and in =
no way even comes close to the reality of a working adserver/SSP that we =
should have had in our hands for 5 months now. =
Unfortunately, I have spent a =
lot of hours and days (off my valuable time) to note and explain all =
facts, developments, issues – firstly internally, to my partners, and =
secondly/mainly to you. The reason is that no matter how many =
friendly/unofficial/personal attempts have been made on my part, either =
to explain the magnitude of the damage/losses of the company from the =
unresolved issues and the delay, or to find a compromise solution for =
the prepayment (which was surely a big mistake from our part), or to =
push for faster delivery of an ad server that will work on (basic and =
non basic features) what we have agreed on from day 1 and not month 5, =
not only are they not appreciated, but they go unnoticed, at least in =
terms of their substance and what should follow in terms of speed of =
resolution, attitude towards the customer (which not is of course not =
=E2=80=9Cworking as expected=E2=80=9D on the 5th month) and =
of course in the commercial part, in which we have practically prepaid =
millions of requests, without recompense. =
What we have agreed and =
prepaid
January (1 to =
31)Priority team on your side so that any issues can be =
addressed promptly.
[=E2=80=9CFirstly, =
in order to get you set up for at least the initial stages for the MVP =
process, you will need a priority team on our side so that any issues =
can be addressed promptly.]January
Developing period with 1M =
requests includedFebruary
Developing period with 1M =
requests includedMarch
End of Development =
=E2=80=93 everything working and beginning (at =
1st of March) of Testing period on white label / own =
domain solution
$1500 minimum usage cost PREPAID or request/usage =
costs according to plan (whichever is =
bigger)April
2nd month Testing =
period
$2500 minimum usage cost PREPAID or request/usage =
costs according to plan (whichever is =
bigger)May
All network integrated, =
Prepaid $3000 minimum costsJune =
All network integrated, =
Prepaid $3000 minimum costs
=C2=B7  =
; From =
the 1st day (developing month) we should have had a fully =
working API enabled solution for our development =
phase.=C2=B7  =
; We =
should have had a fully working white-label solution on our =
domain.
Where we are =
now:
Practically, between the =
1st and 2nd =
month=C2=B7  =
; In no =
way end of development (we still can=E2=80=99t implement PMP =
deals)=C2=B7  =
; In no =
way everything working (March)=C2=B7  =
; We =
can=E2=80=99t be charged for $1500 minimum cost PREPAID for requests =
(March)=C2=B7  =
; Until =
mid of April we only had a working demo and not a fully working =
white-label solution on our domain.
We also have paid for 1 month =
=E2=80=9CPriority team on your side so that any issues can be addressed =
promptly=E2=80=9D and this payment was not present at any deal in any =
email until we saw it in the contract. In any case, I agreed to pay =
these $1250 for the first month, but =
actually:
=C2=B7  =
; We lost =
nearly 10 days with your (dedicated?) team being absent for holidays and =
actually there are emails referring to =E2=80=9Creduced=E2=80=9D support =
team for this period=C2=B7  =
; We never =
had prompt replies=C2=B7  =
; Issued =
were not addressed/resolved or anything =
promptly.
Several issues (to offer an =
idea):1. =
Sandbox =
API Access [reported 1/2/2024] – [solved =
13/3/2024]2. =
Vast 4 =
Wrapper Bug Ad item [reported 1/2/2024] – [solved =
20/03/2024]3. =
Postal =
Code Targeting [reported 17/1/2024] – Hasn’t been solved – We found =
another way4. =
Get Tags =
with Http bug [reported 1/2/2024] – [solved =
25/04/2024]5. =
Get zone =
tags with http – Since moving the white label [reported 25/04/2024] – =
[solved 2/05/2024]6. =
Adbutler =
Passback code inside Adbutler zone tag not working in Native =
[Hasn=E2=80=99t been solved and we can=E2=80=99t work with websites that =
will have no option of passback in their programmatic =
zones)7. =
Get Vast =
tags through API =E2=80=93 [reported 25/04/24] – [solved =
13/05/24]8.  =
; =
PMP =
deals not working =E2=80=93 blocked by =
99.  =
; =
Adform RTB =
rerquest for Vast [reported 12/02/2024] =E2=80=93 [solved =
???]
10. User syncing issue – [to be =
solved]
and some more, as the =
domain referrer, the passing of the values to the CMP (solved at =
10th of May), the gdpr and =
more.I understand that you may find =
several excuses for the lack of connection with Adform, but having a =
fully working white label solution with all API features working and ad =
server / PMP / Open Marketplace is something we might expect by the end =
of the month May hopefully.(At the end of this =
email) I will also take the time and space to explain some of the =
existing issues and their importance, because this idea/image you =
present that =E2=80=9Cexcept PMP everything is working as =
expected=E2=80=9D, is not accurate at all. And we can spend hours and =
many lines stating and explaining what has happened all these months and =
why we are in month 1 and not in month 5. In fact, with PMP deals on =
hold, all this discussion would be actually useless, but I will try =
it.
Losses/Damages assessed until now if we stop =
the collaboration: $64,000 + $10,750 (prepayment) =3D =
$75K
=C2=B7 =
We have a =
dedicated team of 5 developers, struggling for 5 months =
now=C2=B7 =
a =
dedicated product manager=C2=B7 =
A trial =
with Adform that has been ended and we now pay minimum =
costs=C2=B7 =
Commercial =
losses (campaigns that will not run, one of them was the European =
Parliament campaign commissioned to us by Havas Media) and delay losses =
have yet to be assessed.
Current =
state
=C2=B7 =
We have =
started or restarted discussions and presentations with other ad servers =
(you can see the list at the GDPR compliance part of this =
email)=C2=B7 =
Some of =
them (with Epom first) can cover us in everything, with written =
agreement, from gdpr to pmp connection with adform, real time support =
=E2=80=93and (most important) we don=E2=80=99t even need to pay brid.tv for the video =
player, they have a natively working video =
player.=C2=B7 =
A part of =
our development team is studying their API and evaluating and the others =
are still committed to this
Solutions
Mainly based on the options =
you offer in your April email, there are two =
roads:
=C2=B7  =
; Stop =
the collaboration, terminate the agreement as you propose, and we lose 5 =
months work and 5 months time, plus 2 months in order to =
evaluate/agree/test the next adserver/white label SSP. This internal =
damage has been assessed at about $100K. As the management team and =
partners are not willing to throw away these months of work, the =
decision is (if we are led to this solution) to proceed with a detailed =
evaluation of the whole situation and the damages and surely not to lose =
$100,000 and 7 months of work just like that. It might be very simple =
for you to just disconnect everything, but (believe me) it won=E2=80=99t =
be so easy for me (personally, as I believed in this collaboration and =
presented it as the best possible) and mainly for the company. =
=C2=B7  =
; Go on =
with current collaboration and
a. Have all issues =
resolved until the end of the month (31th of May),
b. Written acknowledgment that from June 1st we will =
practically be on February 1st of our contract, which means an extension of our =
contract from June 30th to November =
30th. It is understood that all =
prepayments (which essentially concern requests) do not include income =
from Open Marketplace and PMP deals for which you will normally receive =
the rates we have agreed (3% up to 100000 etc.)
c. =CE=99ssue of credit invoice and =
refund for the $1250 of dedicated and prompt support that never came. =
Alternatively, and if everything is working as expected, we can use it =
as a deposit/amount for your (hopefully) rates payment for the Open =
Marketplace.
At this stage, and after what =
has gone before, we cannot be left without options, therefore we proceed =
with both scenarios.Firstly, we will wait until =
the end of the week for your feedback, agreement (or/and solutions), and =
secondly, in any case, even in the scenario of continuing our =
collaboration, we have to wait for all the issues to be resolved – even =
now.In case they are not resolved, =
or further delayed due to your obvious lack of development and support =
staff, to my great dismay, I have no option than to protect my company. =
You would do that in my position too.And in your position, if all =
this had happened from our part (in any client), I wouldn’t put so =
simply on the table the option of simply terminating the contract and =
return the prepayment. It will be a complex and arduous process, in =
which no self-respecting company is going to walk away from whatever =
(big) damage they have suffered. I think you may understand =
that.
Explaining 2 of the issues and why we =
can=E2=80=99t collaborate without their =
solution.
GDPR =
compliance
The purpose of CMP is to ask =
for a visitor’s consent(s), store it, and pass these consents to an ad =
server. Most publishers at this moment in Europe use CMPs compatible =
with the technical standard of the IAB Transparency and Consent =
Framework (TCF v2). The ad server will get consent from CMP and change =
its behavior accordingly. Full support of CMPs and GDPR compliance means =
that the ad server is not only passing and accepting parameters, but =
cooperates and supports consent management platforms (CMPs) compatible =
with the technical standard of the IAB Transparency and Consent =
Framework (TCF).Moreover (if have been =
implemented might have simplified the process), the IAB Europe =
Transparency and Consent Framework (TCF) has simplified your/our work =
with accredited TCF Vendors list. With an annual fee of only =
=E2=82=AC1,575 and a Compliance questionnaire on https://iabeurope.eu/join-the-tcf/, Adbutler =
could have been in the list of Global Vendor List (GVL), which is =
open for Vendors to apply for approval to participate in the IAB Europe =
Transparency and Consent Framework (TCF).Of course, being a member of =
this Global Vendor List means respecting the rules, but this simplifies =
the process also for publishers, as they have the chance by default to =
handle all IAB approved vendors on their CMP and perform actions =
automatically (blocking/approving), which is what it happens right =
now.Project =
Agora, =
for example, which is a greek programmatic platform, is already =
listed.Brid is listed for their ad =
manager / vendor features.All API enabled / white =
label ad servers that we were having discussions are already registered =
(Admixer, Exads, Epom, Equativ, =
Smartyads).Adbutler is not =
listed =
and (additionally or not) does not do anything on their side even if =
consent is not given by the user.
Most important is that all =
competitors, starting from Google Ad Manager and ending up in the =
companies mentioned before, are fully =
compliant.The logic that we record the =
information but do not do anything (rather than pass it back) is not =
functional. The reason is that although at the OpenRTB level this can =
work (i.e. the demand partner decides whether or not to display the ad), =
at the direct ads level, it cannot work. The publisher cannot turn =
into an ad tech company nor does it have a way to cut the ad by =
itself so that it is not illegal when the user does not give consent. =
We put a burden of tech responsibility on publishers that cannot be =
attributed in any case and that other ad managers =
offer.So, we fully cancel all direct =
ad capabilities, which is the main purpose of an =
adserver.
Finally, on our discussions =
this week with Epom, we understand that the ad server (at least theirs), =
does not throw away the consent information or just pass it back, but =
they have a settings feature where the user can decide to display or not =
a banner ad if the user hasn=E2=80=99t given their consent. Be sure that =
most publishers are not only fully aware of GDPR laws, but they =
won=E2=80=99t be willing to use an ad server that does display ads =
without consent =E2=80=93 they won=E2=80=99t risk any action that will =
put them into a danger of very large fines. Practically, =
our ad server is useless in Europe for publishers that would like to use =
it out of the box.
SSP / =
Programmatic
As you already know, the =
main use of the adserver in our case is the SSP feature. As we already =
have a network fully working on PMP deals and Open Marketplace on =
Vidverto, we can’t transfer any site into our platform, not only if =
extensive tests will have been made, but firstly if we are ensured that =
both Open Marketplace and PMP deals are working. Finally, web =
development without being able to have data cannot be put in serious =
progress.As for the second part =
(PMP Deals), which is the main point of our collaboration with Adform, =
as it was already a demand partner / PMP ad tech provider for PMP =
deals through Vidverto, you have admitted that (on our 5th =
month) is not working and we are waiting for a =
solution.As for the first part =
(OpenRTB), there are 2 different cases:=C2=B7  =
; Display campaigns. =E2=80=9CIf the adserver =
has already identified an AdForm user ID for this user, it will pass =
that ID into the OpenRTB request. If we do not have an AdForm user ID =
for this user, this request will cookie-sync the user so that all =
subsequent requests will have that user=E2=80=99s ID=E2=80=9D. So, =
this means that for the first visit, the user will not be available for =
OpenRTB requests. Losing this inventory opportunity us totally =
unacceptable. Just to give you an idea of what this means, we quote the =
numbers from google analytics of one of the sites we work with, for the =
last 4 weeks (28 days report from =
GA):
Total
Unique=
page_view
8.704.986
2.403.807
session_start
6.866.302
2.439.859
user_engagement
6.628.517
1.814.244
first_visit
1.598.929
1.271.643
=C2=B7  =
; 1,271,643 out of 2,403,807 total users visited the site for =
the first time. This is 47%. Some of them will not have the chance to =
see a single ad if they are in the bounce rate portion. Would you be =
willing to lose all this ad traffic, especially if you are already in a =
platform that doesn’t have this limitation? In this case we are a =
weak competitor to our own existing platform and the whole commercial =
model will surely collapse. Moreover, this corresponds to at least 17% =
loss of income from lost advertising inventory, which is much more =
actually as loss, as unique users make the difference and not many =
repeated impressions.`=C2=B7  =
; VAST =
campaigns. Out of the Box and Industry Standard you suggest: The =
out-of-the-box and industry solution here that is the way it=E2=80=99s =
solved by other publishers using any ad platform is a cookie-syncing =
pixel placed on the publisher page before any other ad calls. This =
pixel syncs the user, and all other ad calls can read that cookie. =
The problem there is that we =
limit the use of the platform as a fully working ad server (which =
clearly does not do the job, as already specified and explained), built =
on the publisher. Actually, it doesn=E2=80=99t work like that on ad =
networks that use a portion of the ad inventory of the publisher. We are =
not publishers. In all other cases, we have publishers having their own =
ad server solutions, mostly free and fully GDPR compliant (Google Ad =
Manager). We have a collaboration with over 100 publishers, by sending a =
single zone tag to them and this tag is implemented only on the place it =
needs to be inserted. No access or demand to have access on head, which =
will not be acceptable and will have a lot more issues (interfering with =
their code and the lack of implementing simple things on their side), =
especially for a single video ad placements. All, but all, but all, =
video ad monetization services we know do not place anything on the =
head, nor wait until the second view/request to be able to sync the =
user. Moreover, the second solution (sneaking AdButler user syncing =
pixel into one of the VAST tracking event URLs, so when one of the VAST =
tracking events gets fired, as an example, the =E2=80=9CVideo =
Start=E2=80=9D event, we can also call our user sync URL and sync the =
user. This means all subsequent ad requests would include the =
AdForm user ID) means that the first ad request for a unique visitor =
to a page will not be synced to that AdForm user, so we lose also =
the first impression in times of inventory, which is also a 17% (all =
inventory) / 47% (first visit) loss. =
=C2=B7  =
; =CE=91 =
very rough but not completely correct (*) solution would be to set the =
user sync cookie to fire in all Open Marketplace and PMP enabled zones =
(even on native that serve video player / Brid tag) as a tag/pixel =
before anything else happens. This would solve the display and native =
issue as there would always be pre-recognition, it would solve the brid =
video player issue as there would always be pre-recognition but it would =
not solve the issue in vast campaigns that would play by users with =
another player. But we can live with that, as we want Open Marketplace =
and PMP deals for VAST campaigns to be implemented through our video =
player (Brid).=C2=B7  =
; But, =
it is very important to avoid useless requests, so Adbutler could by =
default recognize (for positions that are Open Marketplace and PMP =
enabled) the new user (frequency cap 1), and call Adbutlers user sync =
URL and sync the user.
* This is not a completely =
correct (*) solution as we will have to add this user sync URL call for =
every DSP we will collaborate. At this stage it’s only Adform, but the =
purpose of the SSP is to collaborate with many DSPs, so in this case we =
would have to add a pixel from all providers before the first =
view.
Tasos =
VogiatzisManaging Director
www.brainfoodmedia.gr | =
www.brainfood.gr =
Alfavita.gr | Allyou.gr | Avopolis.gr | Botrini.gr | Childit.gr | Glykouli.gr
Enwsi.gr | Epixeiro.gr | Platform.gr | Tetrapodo.gr | Thecaller.gr | Theopinion.gr
P. 212-1056743 | M: =
+306940715510
——=_NextPart_001_003E_01DAA6AF.D2CE3D30–
——=_NextPart_000_003D_01DAA6AF.D2CE3D30
Content-Type: image/jpeg;
name=”image001.jpg”
Content-Transfer-Encoding: base64
Content-ID:
/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwkHBgoJCAkLCwoMDxkQDw4ODx4WFxIZJCAmJSMg
IyIoLTkwKCo2KyIjMkQyNjs9QEBAJjBGS0U+Sjk/QD3/2wBDAQsLCw8NDx0QEB09KSMpPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT3/wAARCAAuAOEDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDn/Gmu
6rZeMtXgttUvooY7ghEW4cBeAeBn3r23wxbhvCGmLK8sxltY3d5JCzMzKGJLdeprwPx9/wAj1rf/
AF8H/wBBFfQPhj/kVNI/68of/QBQM8p1vxd4g8CeNLqyF9LfWIYSJDdtvJjbnAbqCOR+FevaVqUG
saXbX9qSYbiMSLnqAex968P+L/8AyPsn/XrF/wCzV6n8NLeS2+H+lJKu1mRnA9mcsP0IoEdTRRRQ
AUUUUAFFFJQB5X8ZbTWrqbThZxXM2nhTuSBWbEuerAe2MfjXdeDo9Qi8I6amsFzfCH955hy3U4B9
8YzW3SUALRRRQAUUUlAHD/FDxnJ4Y0mO2sHC6heA7X7xIOrD37D/AOtVK/8AP8OfBiSUtI97cwq8
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
——=_NextPart_000_003D_01DAA6AF.D2CE3D30
Content-Type: image/png;
name=”image002.png”
Content-Transfer-Encoding: base64
Content-ID:
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
——=_NextPart_000_003D_01DAA6AF.D2CE3D30–