Digitegu 2016 parim kampaanialeht ja online reklaam: Uuskasutus­keskuse "Toome ära"

Best Marketing Internationali juht Hando Sinisalu õnnitlemas ADM Interactive'i tegevjuhti Riho Pihelpuud
Best Marketing Internationali juht Hando Sinisalu õnnitlemas ADM Interactive'i...

Uuskasutuskeskus tegeleb kasutatud asjade taasringlusesse laskmisega ning korraldab vähemalt korra aastas kampaania, et populariseerida taaskasutust ja koguda kampaania korras suurem hulk taaskasutatavaid asju. Koostöös agentuuriga ADM Interactive ja Division tõsteti inimeste teadlikkust taaskasutusest ning tehti vanade asjade äratoomine lihtsamaks. Kampaania võitis Digitegu 2016 auhinna nii parima kampaanialehe kui ka online reklaami kategoorias.

Taustalugu:

Paljud inimesed ei panusta oma vanade asjade taaskasutusse laskmisse, kuna see tundub aeganõudev ja tülikas või ei ole nad sellisest võimaluselt üldse teadlikud.
Uuskasutuskeskusel on kauba äratoomiseks üks kaubik, mis aga on ka kampaaniavälisel perioodil pidevalt juba ette broneeritud, mistõttu ei suudeta reageerida järsku kasvavale nõudlusele. Täiendavate kaubikute ostmine ei ole majanduslikult otstarbekas.

Eesmärk 1: "Toome ära!" kampaania eesmärk oli inimestele pakkuda võimalikult mugav viis oma vanade asjade taaskasutusse andmiseks, et ebamugavusfaktor ei oleks vabandus. Eesmärk oli koguda vähemalt sama kogus asju, kui eelmise aasta kogumiskampaania käigus, ehk vähemalt 100 tonni.

Eesmärk 2: Tõsta inimeste teadlikkust taaskasutusest ja selle erinevatest võimalustest. Mõõdetavaks eesmärgiks oli kampaaniajärgsel perioodil kogutud asjade baasmahu kasv. "Toome ära!" kampaaniale eelneval perioodil oli baasmaht 50 tonni kuus.

Eesmärk 3: Võimalikult väikse meediaeelarvega saada võimalikult palju katvust PR-kanalite kaudu.

Kampaania:

Kuna Uuskasutuskeskuse enda logistikasuutlikkust ei saanud ära kasutada, et lihtsustada inimestel oma asjade äraandmist, tuli leida viis, kuidas siiski teha inimestele oma asjade äratoomine võimalikult lihtsaks. Seoses sellega mõtlesime koostöös Kliendiga välja erinevad võimalused, kuidas lihtsustada inimestel oma asjade äraandmist:

  • Lisaks seitsmele üle Eesti paiknevale kogumiskeskusele paigutasime täiendavad kampaania visuaaliga kogumiskonteinerid Tallinnas ja Tartus kohtadesse, kus kasutajatel oleks autoga mugav läbi sõita (Pirital ja Tartus Lõunakeskuses) – teavitus sellest kampaania lehel ning PR’iga
  • Kampaania visuaaliga ja infomaterjaliga kogumiskottide jagamine kaubandusekeskustes. Kokku jagati 938 kogumiskotti ja 1945 flaierit
  • Kampaania maandumisleht, koos kulleri tellimise võimalusega – teavitus ostetud online-meedia ja PR'iga

Kampaania kogueelarve 19 951 EUR, mis sisaldas:

  • loovlahenduse väljatöötamist ja tootmist (konteinerite visuaal, välimeedia, kogumiskotid ja flaierid, sotsiaalmeedia visuaalid)
  • konteinerite renti
  • kampaanialehe disaini ja arendust.
  • kampaanialehe kullerilahenduse integratsiooni PostPal kullersüsteemiga
  • meediaeelarvet 2 331 EURi: digimeedia (Facebook, Google, Postimees) ja välimeedia 2 nädalat 5 piilarit Pirita teel ja kesklinnas

Vaja oli leida lahendus, kuidas anda mugav võimalus osaleda taaskasutuses inimestele, kes seni ei ole konteineritesse asju toonud. Lisaks tahtsime olla piisavalt huvitav meediale, et saada võimalikult palju PR-kajastust. Otsustasime teha kullerlahenduse osas koostööd Eesti innovaatilise crowd-sourcing kullerteenusega PostPal. PostPal’i roheline mõtteviis sobis ka Uuskasutuskeskuse ideoloogiaga. PostPal’i kontseptsioon võimaldas meil kaasata ka täiendavaid vabatahtlikke kullereid kampaania perioodiks, millest teavitasime ka kampaania lehel. Kõik see tekitas meedias täiendavat huvi.

Tulemused:

Eesmärk 1 – Taaskasutusse toodud asjade koguse kasv kampaaniaperioodil: 100 tonni

  • Tulemus 153 tonni
  • Eesmärk täidetud 153%

Eesmärk 2 – Kampaaniavälisel perioodil taaskasutusse
toodavate asjade maht: 50 tonni

  • Tulemus pärast kampaaniat: kuu keskmine 100 tonni - eesmärk täidetud 200%

Eesmärk 3 – meediakajastus:
8 x online meedias
5 x trükimeedias
3 x raadios
2 x teles

Teostus: Agentuur ADM Interactive koostöös loovagentuuriga Division ning logistika start-up’iga PostPal.

Konkursile Aasta Digitegu esitati tänavu 70 tööd. Võitjad selguvad 3. - 4. novembril Tallinnas toimuval Eesti digitaalturunduse aastakonverentsil Best Internet 2016.

Digitegu tunnustab eelkõige digitaalturunduse tulemuslikkust – sest digiturunduses on kõik mõõdetav. Digitegu konkursi korraldajaks on 5. aastat järjest Best Marketing. Best Internetil pärjatakse Eesti digivaldkonna parimaid juba alates aastast 2009, mil Best Marketing korraldas esimest korda koos ADC*Estoniaga Eesti Internetiauhind nimelist konkurssi.

Konkurssi korraldab Best Marketing (Äripäev AS).

Osale arutelus

ERROR: Object template SessionInfo is missing!

Toetajad

VIGA

Meil on tehnilised probleemid. Katsume need kiirelt lahendada. Vabandame!

Palun kliki mõne aja pärast uuesti: www.aripaev.ee

Kuniks veebileht ei avane, on meil pakkuda teisi tooteid:

Infopank Äripäeva käsiraamatud Äripäeva Akadeemia Äripäeva Raamatuklubi Äripäeva veebipood

"; content = content.replace("Path not found","").replace("Permission denied","").replace(//g, ""); content = JSON.parse(content); var utmLink = "?utm_source=http://www.bestmarketing.ee&utm_medium=KuumadLood"; // ReadNext block var ReadNext = (function () { var $readNextBar = $(".js-read-next"), $readNextItems = $readNextBar.find(".js-read-next__items"), $readNextItemsContainer = $readNextBar.find(".js-read-next__container"), contentSelector = ".article-content", width = 0, height = 0, mostReadArticles = [], unreadArticles = [], currentElement = 0, numberOfElements = 24, numberOnPage = 4, maxAvailable = 24, showFirstUnlockedArticles = 2, showSecondLockedArticles = 2, mobileSlideWidthSeen = 110, alreadyScrolling = false, currentTransition = 0, animationDuration = 600 var init = function () { // Create click handlers _setNextButtonClickHandler(); _setPrevButtonClickhandler(); _bindWidthCalculation(); ReadNext.showRecommendations(); }; var showRecommendations = function () { _calculateWidth(); $readNextItems.css("width",width); if (window.innerWidth < 768) { numberOnPage = 2; maxAvailable = 20; } else { numberOnPage = 4; maxAvailable = 20; } var readArticleIds = _getReadArticles(); unreadArticles = _.chain(mostReadArticles) .filter(function (article) { return !_.contains(readArticleIds, article.id); }) .first(maxAvailable) .value(); numberOfElements = unreadArticles.length; if (unreadArticles.length > 0) { _reaarrangeArticles(); _initElements(); _showBar(); _miscOperations(); } }; /** * If article is not too old to be in most-read box and is not already read, * add it"s id to cookie */ var addToReadArticles = function (id, date) { var readArticleIds = _getReadArticles(); if (readArticleIds.length > 64) { readArticleIds = _purgeOldIds(readArticleIds); } var readArticles = readArticleIds.join(","); if (!_isTooOld(date) && readArticles.indexOf(id) < 0) { readArticles = (readArticles.length > 0) ? readArticles + "," + id : id; createCookie("readArticles", readArticles, 2, "/", null); } }; var setArticles = function (arr) { mostReadArticles = arr; }; var isHidden = function () { var style = window.getComputedStyle($readNextBar[0]); return (style.display === 'none'); }; var _showBar = function () { $readNextBar.fadeIn(500); _detectSwipe($readNextBar, _swipeToDir); }; var _showNextPage = function () { if(alreadyScrolling) { return; } currentTransition--; alreadyScrolling = true; var $prev = $(".js-read-next__items__prev"); var $curr = $(".js-read-next__items__current"); var $next = $(".js-read-next__items__next"); $readNextItems.css({ "transform": "translate("+(currentTransition * 100)+"%)", "transition-duration": animationDuration+"ms" }); setTimeout(function() { $prev.remove(); $curr.removeClass("js-read-next__items__current").addClass("js-read-next__items__prev"); $next.removeClass("js-read-next__items__next").addClass("js-read-next__items__current"); _addNextElements((-currentTransition + 1 ) * 100 ); $readNextItems.css("transition-duration","0ms"); }, animationDuration); currentElement += numberOnPage; while(currentElement >= numberOfElements) { currentElement = (currentElement >= numberOfElements) ? (currentElement - numberOfElements) : currentElement; } _miscOperations(); }; var _showPrevPage = function () { if(alreadyScrolling) { return; } currentTransition++; alreadyScrolling = true; var $prev = $(".js-read-next__items__prev"); var $curr = $(".js-read-next__items__current"); var $next = $(".js-read-next__items__next"); $readNextItems.css({ "transform": "translate("+(currentTransition * 100)+"%)", "transition-duration": animationDuration+"ms" }); setTimeout(function() { $next.remove(); $curr.removeClass("js-read-next__items__current").addClass("js-read-next__items__next"); $prev.removeClass("js-read-next__items__prev").addClass("js-read-next__items__current"); _addPrevElements((-currentTransition - 1 ) * 100 ); $readNextItems.css("transition-duration","0ms"); }, animationDuration); currentElement -= numberOnPage; while(currentElement < 0) { currentElement = (currentElement < 0) ? (numberOfElements + currentElement) : currentElement; } _miscOperations(); }; var _miscOperations = function () { //calc the container height so it would not block the content $(".js-read-next__item").each(function() { var item = $(this); var elementHeight = item.height(); if(elementHeight > height) { height = elementHeight; $readNextItemsContainer.css("height", height); } //adding utm tags var a = item.find(".js-article-exit"); a.attr("href", a.attr("href") + utmLink); }); setTimeout(function() { //after animation enable navigation alreadyScrolling = false; }, animationDuration); }; var _initElements = function () { alreadyScrolling = true; $readNextItems.append(_getElements(0, numberOnPage).addClass("js-read-next__items__current")); _addPrevElements(-100, -numberOnPage); _addNextElements(100, numberOnPage); currentElement = 2 * numberOnPage - 1; while(currentElement >= numberOfElements) { currentElement = (currentElement >= numberOfElements) ? (currentElement - numberOfElements) : currentElement; } alreadyScrolling = false; }; var _addPrevElements = function (transition, elementIndex) { var firstElement = currentElement - 3 * numberOnPage; if(typeof elementIndex !== "undefined") { firstElement = elementIndex; } while(firstElement < 0) { firstElement = (firstElement < 0) ? (numberOfElements + firstElement) : firstElement; } var items = _getElements(firstElement, numberOnPage).addClass("js-read-next__items__prev").css("transform","translate("+transition+"%)"); $readNextItems.append(items); }; var _addNextElements = function (transition, elementIndex) { var firstElement = currentElement + 1; if(typeof elementIndex !== "undefined") { firstElement = elementIndex; } while(currentElement >= numberOfElements) { firstElement = (firstElement >= numberOfElements) ? (firstElement - numberOfElements) : firstElement; } var items = _getElements(firstElement, numberOnPage).addClass("js-read-next__items__next").css("transform","translate("+transition+"%)"); $readNextItems.append(items); }; var _addToHtml = function ($container, data) { var html = ''; $container.html($container.html() + html); }; var _getElements = function (firstElement, numberToTake) { var $itemGroup = $(''); var elementIndex = firstElement; for (var i = numberToTake; i > 0; i--) { if(elementIndex >= numberOfElements) { elementIndex = 0; } _addToHtml($itemGroup, unreadArticles[elementIndex]); elementIndex++; } return $itemGroup; }; var _bindWidthCalculation = function () { $(window).on("resize.readNext", function(){ _redefineElementWidth(); }) }; var _redefineElementWidth = function () { _calculateWidth(); $readNextBar.find(".js-read-next__items__group").css("width",width); $readNextItems.css("width",width); }; var _calculateWidth = function () { width = $readNextBar.width(); if(window.innerWidth < 768) { var padding = parseInt($readNextItemsContainer.css("padding-right")) + parseInt($readNextItemsContainer.css("padding-left")); width = window.innerWidth - padding; } }; // Article management var _getReadArticles = function () { var readArticles = decodeURIComponent(getCookie("readArticles")); var readArr = readArticles !== "null" ? readArticles.split(",") : []; return _.map(readArr, function (val) { return parseInt(val); }); }; var _purgeOldIds = function (readArticleIds) { // convert ids to integers in case they are given as strings readArticleIds = _.map(readArticleIds, function (val) { return parseInt(val); }); // get article id"s from most-read box var mostReadIds = _.pluck(mostReadArticles, "id"); return _.intersection(mostReadIds, readArticleIds); }; // Article is too old if it's date is set more than 2 days ago var _isTooOld = function (date) { var y = parseInt(date.substr(0, 4)), m = parseInt(date.substr(4, 2)) - 1, d = parseInt(date.substr(6, 2)); var expireDate = new Date(y, m, d); expireDate.setDate(expireDate.getDate() + 2); var now = new Date().setHours(0, 0, 0, 0); return expireDate < now; }; var _reaarrangeArticles = function() { var unlockedArticleCount = 0; var lockedArticlesCount = 0; for (var i = 0; i < unreadArticles.length; i++) { var article = unreadArticles[i]; if (article.lockID === "" && unlockedArticleCount < showFirstUnlockedArticles ) { unreadArticles.splice(i,1); unreadArticles.splice(unlockedArticleCount, 0, article); unlockedArticleCount++; } else if (article.lockID !== "" && lockedArticlesCount < showSecondLockedArticles) { unreadArticles.splice(i,1); unreadArticles.splice(unlockedArticleCount + lockedArticlesCount, 0, article); lockedArticlesCount++; } else if(lockedArticlesCount >= showSecondLockedArticles && unlockedArticleCount >= showFirstUnlockedArticles) { break; } } }; // Bar visibility var _getArticleContentHeight = function () { var contentParts = $(contentSelector); var contentHeight = 0; _.each(contentParts, function (content) { var height = $(content).height(); contentHeight += height; }); return contentHeight; }; var _getArticleDistanceFromTop = function () { var $firstArticlePart = $($(contentSelector)[0]); return $firstArticlePart.offset().top; }; var _getShowBarOffset = function () { var articleContentHeight = _getArticleContentHeight(), articleOffset = _getArticleDistanceFromTop(), windowHeight = $(window).height(); return articleOffset + (2 / 3 * articleContentHeight) - windowHeight; }; // Click handlers var _setNextButtonClickHandler = function () { $(document).on("click", ".js-read-next__next", _showNextPage); }; var _setPrevButtonClickhandler = function () { $(document).on("click", ".js-read-next__prev", _showPrevPage); }; var _swipeToDir = function (dir) { if (dir === "l") { _showNextPage(); } else if (dir === "r") { _showPrevPage(); } }; var _detectSwipe = function (ele,func) { var swipe = { x: 0, x1: 0, xMin:30 }; var dir = ""; var currTranInPx = width * currentTransition; ele.bind('touchstart', function(e){ var t = e.originalEvent.touches[0]; swipe.x = t.screenX; currTranInPx = width * currentTransition; }) ele.bind('touchmove', function(e){ e.preventDefault(); var t = e.originalEvent.touches[0]; swipe.x1 = t.screenX; if(swipe.x1 === 0 || alreadyScrolling) { return; } var diff = swipe.x - swipe.x1; diff = (diff > width) ? width : diff; diff = (diff < -width) ? (-width) : diff; var calculatedTransform = currTranInPx - diff; $readNextItems.css("transform","translate("+calculatedTransform+"px)"); }) ele.bind('touchend', function(e){ if (swipe.x1 === 0 || alreadyScrolling) { return; } if ((swipe.x - swipe.x1) >= swipe.xMin) { dir = "l"; } else if ((swipe.x1 - swipe.x) >= swipe.xMin) { dir = "r"; } if (dir !== "") { if(typeof func == 'function') func(dir); } else { $readNextItems.css("transform","translate("+currTranInPx+"px)"); } dir = ""; swipe.x = 0; swipe.x1 = 0; }) }; return { showRecommendations: showRecommendations, addToReadArticles: addToReadArticles, init: init, setArticles: setArticles, isHidden: isHidden }; })(); ReadNext.setArticles(content); ReadNext.init();

Jälgi Bestmarketingi sotsiaalmeedias

RSS

Toetajad

Valdkonna töökuulutused

Sirowa Tallinn otsib TOOTEJUHTI

Sirowa Tallinn AS

31. märts 2017

Rademar otsib TURUNDUSSPETSIALISTI

Rademar OÜ

31. märts 2017

KAJA

märts 2017