1<!DOCTYPE html> 2<html lang="fi"> 3<head>
4<script defer data-domain="radiomedia.fi" src="https://analytics.dude.fi/js/script.js"></script>
4 5 6 <!-- We will control most of the scripts from Radiomedias Google tag manager account. Tag manager will initialize for example GA and HubSpot scripts. 7 Though, we dont want to initialize these scripts in local or staging environments --> 8 9
9<script id="Cookiebot" src="https://consent.cookiebot.com/uc.js" data-cbid="c74f0973-ec6e-4664-86c6-17d291e74b89" data-blockingmode="auto" type="text/javascript"></script>
9 10
10<script data-cookieconsent="ignore"> 11 window.dataLayer = window.dataLayer || []; 12 function gtag() { 13 dataLayer.push(arguments); 14 } 15 gtag("consent", "default", { 16 ad_storage: "denied", 17 analytics_storage: "denied", 18 functionality_storage: "denied", 19 personalization_storage: "denied", 20 security_storage: "denied", 21 wait_for_update: 2000, 22 }); 23 gtag("set", "ads_data_redaction", true); 24 </script>
24 25 26 <!-- Google Tag Manager --> 27
27<script> 28 window.addEventListener('CookiebotOnAccept', function (e) { 29 if (!Cookiebot.consent.statistics) return;
vendor: 370 bytes, lines 29-34
29 30 (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 31 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 32 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 33 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 34 })(window,document,'script','dataLayer','
34GTM-M6LS6CQ
vendor: 10 bytes, lines 34-35
34'); 35
35}); 36 </script>
36 37 <!-- End Google Tag Manager --> 38 39 <meta charset="UTF-8"/> 40 <meta name="viewport" content="width=device-width, initial-scale=1"> 41 42 <title>Radiomainonnan ostaminen - RadioMedia</title> 43 44<!-- The SEO Framework tehnyt Sybre Waaijer --> 45<meta name="robots" content="max-snippet:-1,max-image-preview:standard,max-video-preview:-1" /> 46<link rel="canonical" href="https://radiomedia.fi/radiomainonta/radiomainonnan-ostaminen/" /> 47<meta name="description" content="Radiomainontaa voi ostaa suoraan radioyhtiöstä tai mediatoimistojen kautta. He osaavat auttaa kanavavalinnoissa sekä oikean peitto- ja toistotasonâ¦" /> 48<meta property="og:type" content="website" /> 49<meta property="og:locale" content="fi_FI" /> 50<meta property="og:site_name" content="RadioMedia" /> 51<meta property="og:title" content="Radiomainonnan ostaminen" /> 52<meta property="og:description" content="Radiomainontaa voi ostaa suoraan radioyhtiöstä tai mediatoimistojen kautta. He osaavat auttaa kanavavalinnoissa sekä oikean peitto- ja toistotason määrittelemisessä. Radioyhtiöt ovat oman tuotteensaâ¦" /> 53<meta property="og:url" content="https://radiomedia.fi/radiomainonta/radiomainonnan-ostaminen/" /> 54<meta property="og:image" content="https://radiomedia.fi/wp-content/uploads/2022/09/radiomedia-some.jpg" /> 55<meta property="og:image:width" content="800" /> 56<meta property="og:image:height" content="600" /> 57<meta name="twitter:card" content="summary_large_image" /> 58<meta name="twitter:title" content="Radiomainonnan ostaminen" /> 59<meta name="twitter:description" content="Radiomainontaa voi ostaa suoraan radioyhtiöstä tai mediatoimistojen kautta. He osaavat auttaa kanavavalinnoissa sekä oikean peitto- ja toistotason määrittelemisessä. Radioyhtiöt ovat oman tuotteensaâ¦" /> 60<meta name="twitter:image" content="https://radiomedia.fi/wp-content/uploads/2022/09/radiomedia-some.jpg" />
61<script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://radiomedia.fi/#/schema/WebSite","url":"https://radiomedia.fi/","name":"RadioMedia","inLanguage":"fi","potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://radiomedia.fi/search/{search_term_string}/"},"query-input":"required name=search_term_string"},"publisher":{"@type":"Organization","@id":"https://radiomedia.fi/#/schema/Organization","name":"RadioMedia","url":"https://radiomedia.fi/"}},{"@type":"WebPage","@id":"https://radiomedia.fi/radiomainonta/radiomainonnan-ostaminen/","url":"https://radiomedia.fi/radiomainonta/radiomainonnan-ostaminen/","name":"Radiomainonnan ostaminen - RadioMedia","description":"Radiomainontaa voi ostaa suoraan radioyhtiöstä tai mediatoimistojen kautta. He osaavat auttaa kanavavalinnoissa sekä oikean peitto- ja toistotasonâ¦","inLanguage":"fi","isPartOf":{"@id":"https://radiomedia.fi/#/schema/WebSite"},"breadcrumb":{"@type":"BreadcrumbList","@id":"https://radiomedia.fi/#/schema/BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":"https://radiomedia.fi/","name":"RadioMedia"},{"@type":"ListItem","position":2,"item":"https://radiomedia.fi/radiomainonta/","name":"Radiomainonta"},{"@type":"ListItem","position":3,"name":"Radiomainonnan ostaminen"}]},"potentialAction":{"@type":"ReadAction","target":"https://radiomedia.fi/radiomainonta/radiomainonnan-ostaminen/"}}]}</script>
61 62<!-- / The SEO Framework tehnyt Sybre Waaijer | 7.25ms meta | 4.14ms boot --> 63 64<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://radiomedia.fi/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fradiomedia.fi%2Fradiomainonta%2Fradiomainonnan-ostaminen%2F" /> 65<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://radiomedia.fi/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fradiomedia.fi%2Fradiomainonta%2Fradiomainonnan-ostaminen%2F&format=xml" /> 66<style id="wp-img-auto-sizes-contain-inline-css"> 67img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 68/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 69</style> 70<style id="classic-theme-styles-inline-css"> 71/*! This file is auto-generated */ 72.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 73/*# sourceURL=/wp-includes/css/classic-themes.min.css */ 74</style> 75 76<style id="global-styles-inline-css"> 77:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #fff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--purple: #f50f8a;--wp--preset--color--light-purple: #f2e9ff;--wp--preset--color--gray: #6a6a71;--wp--preset--color--light-gray: #f4f4f8;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
77--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-purple-color{color: var(--wp--preset--color--purple) !important;}.has-light-purple-color{color: var(--wp--preset--color--light-purple) !important;}.has-gray-color{color: var(--wp--preset--color--gray) !important;}.has-light-gray-color{color: var(--wp--preset--color--light-gray) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-purple-background-color{background-color: var(--wp--preset--color--purple) !important;}.has-light-purple-background-color{background-color: var(--wp--preset--color--light-purple) !important;}.has-gray-background-color{background-color: var(--wp--preset--color--gray) !important;}.has-light-gray-background-color{background-color: var(--wp--preset--color--light-gray) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-purple-border-color{border-color: var(--wp--preset--color--purple) !important;}.has-light-purple-border-color{border-color: var(--wp--preset--color--light-purple) !important;}.has-gray-border-color{border-color: var(--wp--preset--color--gray) !important;}.has-light-gray-border-color{border-color: var(--wp--preset--color--light-gray) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
77.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 78/*# sourceURL=global-styles-inline-css */ 79</style> 80 81<link rel='stylesheet' id='cntrst-style-css' href='https://radiomedia.fi/content/themes/radiomedia/assets/dist/layout.css?ver=1734528926' media='all' />
82<script id="jquery-core-js" src="https://radiomedia.fi/wp/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 82
82
83<script id="jquery-migrate-js" src="https://radiomedia.fi/wp/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
83 84<link rel="https://api.w.org/" href="https://radiomedia.fi/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://radiomedia.fi/wp-json/wp/v2/pages/798" /><meta name="google-site-verification" content="NZs0SV59AxaWm3v_g3dG0L1vahrbvS9QqIJNocKBW14" /> 85 <link rel="icon" type="image/png" sizes="16x16" href="https://radiomedia.fi/content/themes/radiomedia/assets/img/favicons/favicon-16x16.png"> 86 <link rel="icon" type="image/png" sizes="32x32" href="https://radiomedia.fi/content/themes/radiomedia/assets/img/favicons/favicon-32x32.png"> 87 <link rel="shortcut icon" href="https://radiomedia.fi/content/themes/radiomedia/assets/img/favicons/favicon.ico"> 88 89<style id="wp-block-heading-inline-css"> 90h1:where(.wp-block-heading).has-background,h2:where(.wp-block-heading).has-background,h3:where(.wp-block-heading).has-background,h4:where(.wp-block-heading).has-background,h5:where(.wp-block-heading).has-background,h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg} 91/*# sourceURL=https://radiomedia.fi/wp/wp-includes/blocks/heading/style.min.css */ 92</style> 93<style id="wp-block-paragraph-inline-css"> 94.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg} 95/*# sourceURL=https://radiomedia.fi/wp/wp-includes/blocks/paragraph/style.min.css */ 96</style> 97 98</head> 99 100<body class="wp-singular page-template-default page page-id-798 page-child parent-pageid-749 wp-theme-radiomedia" itemscope="" itemtype="http://schema.org/WebPage"><!-- the Body --> 101 102<div id="site"> 103 <header class="site-header" id="banner"> 104 <div class="main-bar"> 105 <a class="logo" href="https://radiomedia.fi"> 106 <img class="lazyloaded" src="https://radiomedia.fi/content/themes/radiomedia/assets/img/radiomedia-logo.svg" alt="radiomedia logo"> 107 </a> 108 <nav id="site-navigation" class="nav" aria-label="Päätason valikko"> 109 <div class="search-form-mobile"> 110 <form action="https://radiomedia.fi" method="get" role="search"> 111 <label> 112 <span class="screen-reader-text">Hae sivustolta</span> 113 <input type="text" name="s" required="" aria-invalid="false" minlength="3" aria-label="Haku" placeholder="Haku"> 114 </label> 115 <button type="submit" id="search-button-mobile" aria-label="Vahvista haku" aria-labelledby="search-button-mobile"> 116 <i class="icon-search"></i> 117 <span class="search-text">Haku</span> 118 </button> 119 </form>
120 </div> 121 <ul id="menu-primary" class="menu"><li id="menu-item-788" class="menu-item menu-item-type-post_type menu-item-object-page current-page-ancestor current-menu-ancestor current-menu-parent current-page-parent current_page_parent current_page_ancestor menu-item-has-children menu-item-788"><a href="https://radiomedia.fi/radiomainonta/">Radiomainonta</a> 122<ul class="sub-menu"> 123 <li id="menu-item-841" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-841"><a href="https://radiomedia.fi/radiomainonta/miksi-valita-radio/">Miksi valita radio</a></li> 124 <li id="menu-item-800" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-798 current_page_item menu-item-800"><a href="https://radiomedia.fi/radiomainonta/radiomainonnan-ostaminen/" aria-current="page">Radiomainonnan ostaminen</a></li> 125 <li id="menu-item-797" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-797"><a href="https://radiomedia.fi/radiomainonta/radiomainonnan-tekeminen/">Radiomainonnan tekeminen</a></li> 126 <li id="menu-item-1404" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1404"><a href="https://radiomedia.fi/radiomainonta/radiomainonnan-saannot/">Radiomainonnan säännöt</a></li> 127 <li id="menu-item-3647" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3647"><a href="https://radiomedia.fi/podcast-mainonta/">Podcast-mainonta</a></li> 128</ul> 129</li> 130<li id="menu-item-929" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-929"><a href="https://radiomedia.fi/radiotoimiala/">Radiotoimiala</a> 131<ul class="sub-menu"> 132 <li id="menu-item-949" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-949"><a href="https://radiomedia.fi/radiotoimiala/faktaa-radiotoimialasta/">Faktaa radiotoimialasta</a></li> 133 <li id="menu-item-991" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-991"><a href="https://radiomedia.fi/radiotoimiala/radiotoimiluvat/">Radiotoimiluvat</a></li> 134 <li id="menu-item-1040" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1040"><a href="https://radiomedia.fi/tutkimukset/">Tutkimustietoa radiosta</a></li> 135 <li id="menu-item-992" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-992"><a href="https://radiomedia.fi/radiotoimiala/radion-historia/">Radion historia</a></li> 136</ul> 137</li> 138<li id="menu-item-200" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-200"><a href="https://radiomedia.fi/radiokanavat">Radiokanavat</a> 139<ul class="sub-menu"> 140 <li id="menu-item-3096" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-3096"><a href="https://radiomedia.fi/radiokanavat/">Radiokanavat</a></li> 141 <li id="menu-item-2360" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2360"><a href="https://radiomedia.fi/kuntahaku/">Kuntahaku</a></li> 142 <li id="menu-item-3566" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3566"><a href="https://radiomedia.fi/kuuluvuushaku/">Kuuluvuushaku</a></li> 143</ul> 144</li> 145<li id="menu-item-358" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-358"><a href="https://radiomedia.fi/palvelut/">Palvelut</a> 146<ul class="sub-menu"> 147 <li id="menu-item-511" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-511"><a href="https://radiomedia.fi/palvelut/edunvalvonta/">Radioalan edunvalvonta</a></li> 148 <li id="menu-item-556" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-556"><a href="https://radiomedia.fi/palvelut/koulutukset/">Koulutukset</a></li> 149 <li id="menu-item-850" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-850"><a href="https://radiomedia.fi/myyntipalvelut/">Myyntipalvelut</a></li> 150 <li id="menu-item-4844" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4844"><a href="https://radiomedia.fi/palvelut/palkinnot/">Palkinnot</a></li> 151 <li id="menu-item-559" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-559"><a href="https://radiomedia.fi/palvelut/tapahtumat/">Tapahtumat</a></li> 152 <li id="menu-item-1011" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1011"><a href="https://radiomedia.fi/radiotoimiala/tutkimustietoa-radiosta/">Tutkimukset</a></li> 153 <li id="menu-item-8608" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-8608"><a href="https://radiomedia.fi/avoimuusilmoitukset/">Avoimuusilmoitukset</a></li> 154</ul> 155</li> 156<li id="menu-item-198" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-198"><a href="https://radiomedia.fi/ajankohtaista">Ajankohtaista</a></li> 157<li id="menu-item-362" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-362"><a href="https://radiomedia.fi/tietoa-radiomediasta/">Tietoa RadioMediasta</a> 158<ul class="sub-menu"> 159 <li id="menu-item-563" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-563"><a href="https://radiomedia.fi/tietoa-radiomediasta/mita-radiomedia-tekee/">Esittely</a></li> 160 <li id="menu-item-1171" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1171"><a href="https://radiomedia.fi/tietoa-radiomediasta/hallitus/">Hallitus</a></li> 161 <li id="menu-item-562" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-562"><a href="https://radiomedia.fi/yhteystiedot/">Yhteystiedot</a></li> 162 <li id="menu-item-3628" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3628"><a href="https://radiomedia.fi/radiomedia-in-english/">In English</a></li> 163</ul> 164</li> 165</ul> </nav> 166 167 <div class="search-form"> 168 <form action="https://radiomedia.fi" method="get" role="search"> 169 <span class="screen-reader-text">
169Hakukenttä</span> 170 <input id="search-input" type="text" name="s" required="" aria-invalid="false" minlength="3" aria-label="Haku" placeholder="Haku"> 171 <label> 172 <span class="screen-reader-text">Avaa haku</span> 173 <i id="search-trigger" class="icon-search"></i> 174 </label> 175 <label> 176 <span class="search-text">Haku</span> 177 <span class="screen-reader-text">Hae sivustolta</span> 178 </label> 179 </form> 180 </div> 181 182 <div class="hamburger hamburger--slider hidden-md-up" data-toggle-nav=""> 183 <div class="hamburger-box"> 184 <div class="hamburger-inner"></div> 185 </div> 186 </div> 187 </div> 188 </header> 189 190 191 <main id="primary" class="site-main"> 192 <div class="entry-content"> 193 <div class="blocks col-12"> 194 195<section class="text-and-media-block grey"> 196 <div class="theme"> 197 <div class="grid reverse has-image"> 198 <div class="box col-12 col-md-auto col-bleed"> 199 <div class="content"> 200 <div class="acf-innerblocks-container"> 201 202<h1 class="wp-block-heading">Radiomainonnan <span class="has-inline-color has-purple-color">ostaminen</span></h1> 203 204 205 206<p class="wp-block-paragraph">Radiomainontaa voi ostaa suoraan radioyhtiöstä tai mediatoimistojen kautta. He osaavat auttaa kanavavalinnoissa sekä oikean peitto- ja toistotason määrittelemisessä. Radioyhtiöt ovat oman tuotteensa ammattilaisia ja useimmissa yhtiöissä työskentelee kampanjasuunnittelija, jolla on käytössään kampanjansuunnitteluohjelma.</p> 207 208</div> </div> 209 </div> 210 <div class="image col-12 col-md-auto col-bleed"> 211 <div class="image-wrapper"> 212 <img fetchpriority="high" decoding="async" width="1250" height="570" src="https://radiomedia.fi/wp-content/uploads/2021/06/header-headphones5b-1250x570.jpg" class="attachment-hero size-hero" alt="" /> </div> 213 </div> 214 </div> 215 </div> 216</section> 217 218 219 220<h3 class="wp-block-heading">Mitattuja kontakteja</h3> 221 222 223 224<p class="wp-block-paragraph">Liki kaikessa ostamisessa kulkee mukana kuuntelijamäärätieto KRT:sta (<a href="https://radiomedia.fi/radiotoimiala/tutkimustietoa-radiosta/miten-radion-kuuntelua-mitataan/" data-type="page" data-id="2335">Kansallinen radiotutkimus</a>). Radioyhtiöt ja mediatoimistot käyttävät sähköisiä järjestelmiä radiokampanjan kuuntelijoiden sekä muiden tunnuslukujen laskentaan. Kuuntelijatietojen mukana kulkevat myös hintatiedot. Radioyhtiön järjestelmät keskustelevat keskenään ja todentavat asiakkaalle kampanjoiden toteutuneet lähetysajat sekä kuuntelijamäärät.</p> 225 226 227 228<p class="wp-block-paragraph">Kampanjaa suunniteltaessa on tärkeää ymmärtää radion rooli ja määritellä radiokampanjalle mm. peitto ja toistotasot sekä tavoitteiden kannalta realistinen kokonaisbudjetti. Varsinaisen kampanjasuunnittelun tavoitteena on laatia suunnitelma asetettujen mediatavoitteiden saavuttamisesta kustannustehokkaimmalla tavalla.</p> 229 230 231 232<h3 class="wp-block-heading">Kohderyhmälle optimaalinen kanavaratkaisu</h3> 233 234 235 236<p class="wp-block-paragraph">Yleisö valitsee radiokanavansa pitkälti mieltymyksensä ja kiinnostuksen aiheidensa mukaan. Musiikkivalikoima on merkittävin yksittäinen tekijä kanavan valinnassa. Mainostajan kannalta radiokanavat tarjoavat otollisen ympäristön kohdennetun mainonnan toteuttamiselle â kukin kanava tavoittaa tietyn ikäisen ja arvomaailmaltaan selvästi profiloituvan kohderyhmän.</p> 237 238 239 240<p class="wp-block-paragraph">Kohderyhmän kuuntelutottumuksia analysoimalla löytyy mediatavoitteet tehokkaimmin täyttävä kanavayhdistelmä. Mediatoimistojen ja radioasemien käyttämän kampanjasuunnitteluun tarkoitetun Telmarin Audio Planner -ohjelmiston avulla on mahdollista optimoida kanavakohtainen toistomäärä siten, että lopputulos on tavoittavuudeltaan riittävä, toistotasoltaan halutun kaltainen ja kokonaishinnaltaan edullisin tavoitteet täyttävä radiokanavien yhdistelmä.</p> 241 242 243 244<p class="wp-block-paragraph">Yksi radiomainonnan erityispiirre on mahdollisuus valita mainosten esitysajankohta tiettynä päivänä jopa minuutin tarkkuudella. Lisämaksusta saadaan mainos soimaan esimerkiksi tasatunnin aikaan tai uutislähetyksen ja säÃ
244¤tiedotuksen väliin. Määräpaikan ostamalla mainos voidaan esittää mainoskatkon alussa tai lopussa.</p> 245 246 247 248<h3 class="wp-block-heading">Kohderyhmä- ja spottikauppa</h3> 249 250 251 252<p class="wp-block-paragraph">Valtakunnallisilta radioyhtiöiltä on mahdollista ostaa kohderyhmäkampanjoita radioyhtiön määrittelemistä kohderyhmistä. Kohderyhmäkaupassa radioyhtiö vastaa radiospottien sijoittelusta mainoskatkoilla. Kampanjassa ostetaan haluttu määrä kohderyhmäkontakteja kampanjan aikajaksolle. Tällöin maksetaan kyseisen kohderyhmän kontakteista.</p> 253 254 255 256<p class="wp-block-paragraph">Valtakunnallisissa sekä paikallisissa radioyhtiöissä myydään myös spottikampanjoita. Mainosspotin hinta määräytyy spotin pituuden, blokkikohtaisen sijoittelun ja toistomäärien mukaan. Blokkikohtaiseen hintaan vaikuttavat kyseisen blokin kuuntelijamäärä sekä kapasiteetti.</p> 257 258 259 260<p class="wp-block-paragraph">Yhtiöt määrittelevät bruttohinnat 30 sekunnin pituiselle mainokselle. Eripituisille mainoksille saa hinnan kertomalla 30 sekunnin hinnan pituuskertoimilla, jotka ohessa <a href="https://radiomedia.fi/wp-content/uploads/2023/12/Spottikerroin.xlsx" data-type="link" data-id="https://radiomedia.fi/wp-content/uploads/2023/12/Spottikerroin.xlsx">spottikerrointaulukko (xls)</a>. Kanavapakettihinnastot sekä kaikki kertoimet löytyvät myös Telmar Audio Planner -radiosuunnitteluohjelmistosta.</p> 261 262 263 264<h3 class="wp-block-heading">Sisältömarkkinointiyhteistyö</h3> 265 266 267 268<p class="wp-block-paragraph">Radiotalot tarjoavat brändin kasvattamiseen ja kuluttajien aktivoimiseen ohjelmayhteistyötä, promootioita tai muita erikoisratkaisuja. Kysy näistä ratkaisuista suoraan radioyhtiöltä.</p> 269 270 271 272<section class="text-and-media-block black"> 273 <div class="theme"> 274 <div class="grid reverse has-image"> 275 <div class="box col-12 col-md-auto col-bleed"> 276 <div class="content"> 277 <div class="acf-innerblocks-container"> 278 279<h2 class="wp-block-heading"><span style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-purple-color">Radiokanavat</span></h2> 280 281 282 283<p class="wp-block-paragraph"><span style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-white-color">Katso tästä radiokanavien mediakortit sekä eri kanavien mediamyyntien yhteystiedot.</span></p> 284 285 286 287<div class="text- acf-button-block"> 288 <a class="btn-standard btn-block purple " href="https://www.radiomedia.fi/radiokanavat" title="Radiokanavat" target="_self" 289 > 290 Radiokanavat </a> 291</div> 292 293</div> </div> 294 </div> 295 <div class="image col-12 col-md-auto col-bleed"> 296 <div class="image-wrapper"> 297 <img decoding="async" width="1250" height="650" src="https://radiomedia.fi/wp-content/uploads/2021/09/kuvituskuva-kuulokkeet6-1250x650.jpg" class="attachment-hero size-hero" alt="" srcset="https://radiomedia.fi/wp-content/uploads/2021/09/kuvituskuva-kuulokkeet6-1250x650.jpg 1250w, https://radiomedia.fi/wp-content/uploads/2021/09/kuvituskuva-kuulokkeet6-625x325.jpg 625w" sizes="(max-width: 1250px) 100vw, 1250px" /> </div> 298 </div> 299 </div> 300 </div> 301</section> 302 </div> 303 </div> 304 </main><!-- #main --> 305 306<footer class="site-footer"> 307 <div class="site-footer__top"> 308 <div class="container"> 309 <div class="grid"> 310 <div class="col-md-6 col-12 left-side"> 311 <h3>Onko sinulla lisää kysymyksiä?</h3> 312 <a class="btn-plain" href="https://radiomedia.fi/yhteystiedot/" title="Ota meihin yhteyttä" target="_self"> 313 Ota meihin yhteyttä <i class="animated-arrow"></i> 314 </a> 315 </div> 316 <div class="col-md-6 col-12 right-side"> 317 <div class="somelist"> 318 <h3>Seuraa meitä</h3> 319 <ul class="radiomedia-some"> 320 <li> 321 <a class="icon-twitter" href="https://twitter.com/RadioMediaFI" target="_self" title="twitter"> 322 <span class="screen-reader-text">twitter</span> 323 </a> 324 </li> 325 <li> 326 <a class="icon-facebook" href="https://www.facebook.com/RadioMediaFI" target="_self" title="facebook"> 327 <span class="screen-reader-text">facebook</span> 328 </a> 329 </li> 330 <li> 331 <a class="icon-instagram" href="https://www.instagram.com/radiomediafi/?hl=fi" target="_self" title="instagram"> 332 <span class="screen-reader-text">instagram</span> 333 </a> 334 </li> 335 </ul> 336 </div>
337 </div> 338 </div> 339 </div> 340 </div> 341 <div class="site-footer__mid"> 342 <div class="container"> 343 <a class="logo" href="https://radiomedia.fi"> 344 <img class="lazyloaded" src="https://radiomedia.fi/content/themes/radiomedia/assets/img/radiomedia-logo-white.svg" alt="radiomedia white logo"> 345 </a> 346 347 <ul id="menu-footer-suomi" class="menu-footer"><li id="menu-item-2603" class="menu-item menu-item-type-post_type menu-item-object-page current-page-ancestor current-menu-ancestor current-menu-parent current-page-parent current_page_parent current_page_ancestor menu-item-has-children menu-item-2603"><a href="https://radiomedia.fi/radiomainonta/">Radiomainonta</a> 348<ul class="sub-menu"> 349 <li id="menu-item-2613" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2613"><a href="https://radiomedia.fi/radiomainonta/miksi-valita-radio/">Miksi valita radio</a></li> 350 <li id="menu-item-2960" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-798 current_page_item menu-item-2960"><a href="https://radiomedia.fi/radiomainonta/radiomainonnan-ostaminen/" aria-current="page">Mainonnan ostaminen</a></li> 351 <li id="menu-item-2921" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2921"><a href="https://radiomedia.fi/radiomainonta/radiomainonnan-saannot/">Mainonnan säännöt</a></li> 352</ul> 353</li> 354<li id="menu-item-2612" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2612"><a href="https://radiomedia.fi/radiotoimiala/">Radiotoimiala</a> 355<ul class="sub-menu"> 356 <li id="menu-item-2609" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2609"><a href="https://www.radiomedia.fi/radiokanavat/">Radiokanavat</a></li> 357 <li id="menu-item-2607" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2607"><a href="https://radiomedia.fi/radiotoimiala/tutkimustietoa-radiosta/">Tutkimustietoa radiosta</a></li> 358 <li id="menu-item-2922" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2922"><a href="https://radiomedia.fi/radiotoimiala/faktaa-radiotoimialasta/">Faktaa toimialasta</a></li> 359</ul> 360</li> 361<li id="menu-item-2925" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2925"><a href="https://radiomedia.fi/palvelut/">Palvelut</a> 362<ul class="sub-menu"> 363 <li id="menu-item-2926" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2926"><a href="https://radiomedia.fi/palvelut/edunvalvonta/">Radioalan edunvalvonta</a></li> 364 <li id="menu-item-2927" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2927"><a href="https://radiomedia.fi/myyntipalvelut/">Myyntipalvelut</a></li> 365 <li id="menu-item-2928" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2928"><a href="https://radiomedia.fi/palvelut/tapahtumat/">Tapahtumat</a></li> 366</ul> 367</li> 368<li id="menu-item-2611" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2611"><a href="https://radiomedia.fi/tietoa-radiomediasta/">RadioMedia</a> 369<ul class="sub-menu"> 370 <li id="menu-item-2924" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2924"><a href="https://www.radiomedia.fi/ajankohtaista/">Ajankohtaista</a></li> 371 <li id="menu-item-2608" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2608"><a href="https://radiomedia.fi/yhteystiedot/">Yhteystiedot</a></li> 372 <li id="menu-item-3629" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3629"><a href="https://radiomedia.fi/radiomedia-in-english/">In English</a></li> 373</ul> 374</li> 375</ul> </div> 376 </div> 377 <div class="site-footer__bottom"> 378 <div class="container"> 379 <div class="grid"> 380 <div class="site-footer__mandatory-links bottom-left col-12 col-md-6"> 381 <ul class="mandatory-links left"> 382 <li> 383 <a href="https://radiomedia.fi/tietosuojalauseke/" target="_self" title="Tietosuojalauseke">Tietosuojalauseke</a> 384 </li> 385 </ul> 386 </div> 387 <div class="site-footer__mandatory-links bottom-right col-12 col-md-6"> 388 <ul class="mandatory-links right"> 389 <li> 390 <a href="https://www.radioplayer.fi/" target="_self" title="Radioplayer.fi">Radioplayer.fi</a> 391 </li> 392 <li> 393 <a href="https://www.radiogaala.fi" target="_self" title="RadioGaala">RadioGaala</a> 394 </li> 395 <li> 396 <a href="https://www.kaikukilpailu.fi" target="_self" title="Kaiku">Kaiku</a> 397 </li> 398 </ul> 399 </div> 400 </div> 401 </div> 402 </div> 403</footer> 404
405<script type="speculationrules"> 406{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp/wp-*.php","/wp/wp-admin/*","/wp-content/uploads/*","/content/*","/content/plugins/*","/content/themes/radiomedia/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 407</script>
vendor: 1 bytes, line 407
407
408<script> 409 var relevanssi_rt_regex = /(&|\?)_(rt|rt_nonce)=(\w+)/g 410 var newUrl = window.location.search.replace(relevanssi_rt_regex, '') 411 if (newUrl.substr(0, 1) == '&') { 412 newUrl = '?' + newUrl.substr(1) 413 } 414 history.replaceState(null, null, window.location.pathname + newUrl + window.location.hash) 415</script>
vendor: 1 bytes, line 415
415
416<script id="cntrst-scripts-js" src="https://radiomedia.fi/content/themes/radiomedia/assets/dist/frontend.js?ver=1734528926"></script>
vendor: 1 bytes, line 416
416
417<script id="instantpage-js" src="https://radiomedia.fi/content/plugins/air-helper/assets/js/instantpage.min.js?ver=5.2.0"></script>
vendor: 1 bytes, line 417
417
418<script id="seoaiwp-form-tracking-js-extra"> 419var SeoaiwpConversionConfig = {"enabled":"","tagId":"","label":""}; 420//# sourceURL=seoaiwp-form-tracking-js-extra 421</script>
vendor: 1 bytes, line 421
421
422<script id="seoaiwp-form-tracking-js-after"> 423/** 424 * WordPress & HubSpot Form Events â GTM dataLayer + GA4 gtag 425 * 426 * Listens for successful form submissions from popular WordPress form 427 * plugins and HubSpot forms, then pushes events to both window.dataLayer 428 * (GTM) and gtag (GA4 direct). 429 * 430 * Also tracks clicks on tel: and mailto: links. 431 * 432 * Supported: CF7, Gravity Forms, WPForms, Forminator, Formidable, 433 * Ninja Forms, Fluent Forms, WS Form, Elementor Forms, Enfold (Avia), 434 * HubSpot Forms v3, HubSpot Forms v4, Pipedrive LeadBooster, Leadoo 435 */ 436 437// ââ IE11 closest() polyfill âââââââââââââââââââââââââââââââââââââââ 438 439if (!Element.prototype.closest) { 440 Element.prototype.closest = function (s) { 441 var el = this; 442 do { 443 if (el.matches(s)) return el; 444 el = el.parentElement || el.parentNode; 445 } while (el !== null && el.nodeType === 1); 446 return null; 447 }; 448} 449 450(function () { 451 'use strict'; 452 453 window.dataLayer = window.dataLayer || []; 454 455 // ââ helpers ââââââââââââââââââââââââââââââââââââââââââââââââââ 456 457 // Fires a Google Ads conversion event using values from SeoaiwpConversionConfig 458 // (injected via wp_localize_script from WPSEOAI â Settings â SEA). 459 function fireGoogleAdsConversion() { 460 var cfg = window.SeoaiwpConversionConfig; 461 if (!cfg || !cfg.enabled || !cfg.tagId || !cfg.label) return; 462 if (typeof gtag !== 'function') return; 463 464 gtag('event', 'conversion', { 465 send_to: 'AW-' + cfg.tagId + '/' + cfg.label 466 }); 467 } 468 469 function pushEvent(formPlugin, formId, formElement, extraData) { 470 var submitBtn = formElement 471 ? formElement.querySelector('[type="submit"]') 472 : null; 473 474 var submitText = ''; 475 if (submitBtn) { 476 submitText = submitBtn.tagName === 'INPUT' 477 ? submitBtn.value 478 : submitBtn.textContent.trim(); 479 } 480 481 var basePayload = { 482 event: 'wpseoai_form_submission', 483 formPlugin: formPlugin, 484 formId: formId || '', 485 formClass: formElement ? (formElement.className || '') : '', 486 submitText: submitText, 487 pageUrl: window.location.href, 488 pageTitle: document.title 489 }; 490 491 if (extraData) { 492 Object.keys(extraData).forEach(function (key) { 493 basePayload[key] = extraData[key]; 494 }); 495 } 496 497 // ââ GTM dataLayer push âââââââââââââââââââââââââââââââââââ 498 499 window.dataLayer.push(basePayload); 500 501 // ââ GA4 gtag direct ââââââââââââââââââââââââââââââââââââââ 502 503 if (typeof gtag === 'function') { 504 var gtagPayload = {}; 505 Object.keys(basePayload).forEach(function (key) { 506 if (key !== 'event') gtagPayload[key] = basePayload[key]; 507 }); 508 gtag('event', 'wpseoai_form_submission', gtagPayload); 509 } 510 511 // ââ Google Ads conversion ââââââââââââââââââââââââââââââââ 512 513 fireGoogleAdsConversion(); 514 } 515 516 function pushLinkClick(eventName, linkType, href, linkText) { 517 var payload = { 518 event: eventName, 519 linkType: linkType, 520 linkHref: href, 521 linkText: linkText, 522 pageUrl: window.location.href, 523 pageTitle: document.title 524 }; 525 526 window.dataLayer.push(payload); 527 528 if (typeof gtag === 'function') { 529 gtag('event', eventName, { 530 link_type: linkType, 531 link_href: href, 532 link_text: linkText, 533 page_url: window.location.href, 534 page_title: document.title 535 }); 536 } 537 538 // ââ Google Ads conversion ââââââââââââââââââââââââââââââââ 539 540 fireGoogleAdsConversion(); 541 } 542 543 // ââ 1. Contact Form 7 âââââââââââââââââââââââââââââââââââââââ 544 545 document.addEventListener('wpcf7mailsent', function (event) { 546 var formId = event.detail.contactFormId; 547 pushEvent('cf7', formId, event.target); 548 }, false); 549 550 // ââ 2. Gravity Forms ââââââââââââââââââââââââââââââââââââââââ 551 // 552 // Three confirmation types need separate handling: 553 // a) AJAX text confirmation â 'gform_confirmation_loaded' fires 554 // b) Non-AJAX page reload â '.gform_confirmation_message' present on load 555 // c) Page redirect â track before redirect via 'gform_pre_submission' 556 557 var gfTrackedForms = {}; 558 559 jQuery(function ($) { 560 561 // (a) AJAX text/message confirmation 562 $(document).on('gform_confirmation_loaded', function (event, formId) { 563 if (gfTrackedForms['conf_' + formId]) return; 564 gfTrackedForms['conf_' + formId] = true; 565 566 var formEl = document.getElementById('gform_' + formId) || 567 document.querySelector('#gform_wrapper_' + formId + ' form'); 568 pushEvent('gravity_forms', formId, formEl); 569 }); 570 571 // (b) Non-AJAX page reload â confirmation message rendered server-side 572 $('.gform_confirmation_message').each(function () { 573 var wrapper = $(this).closest('.gform_wrapper'); 574 var formId = (wrapper.attr('id') || '').replace('gform_wrapper_', ''); 575 if (formId && !gfTrackedForms['conf_' + formId]) { 576 gfTrackedForms['conf_' + formId] = true; 577 pushEvent('gravity_forms', formId, null); 578 } 579 }); 580 581 // (c) Redirect confirmation â capture before the browser navigates away 582 if (typeof gform !== 'undefined' && typeof gform.addAction === 'function') { 583 gform.addAction('gform_pre_submission', function (formEl) { 584 var formId = formEl ? formEl.getAttribute('id') : ''; 585 formId = formId.replace('gform_', ''); 586 if (formId) { 587 pushEvent('gravity_forms', formId, formEl); 588 gfTrackedForms['conf_' + formId] = true; 589 } 590 }); 591 } 592 593 // ââ 3. WPForms âââââââââââââââââââââââââââââââââââââââââ 594 595 $(document).on('wpformsAjaxSubmitSuccess', 'form.wpforms-form', function (event) { 596 var formId = $(event.target).attr('data-formid'); 597 pushEvent('wpforms', formId, event.target); 598 }); 599 600 // ââ 4. Forminator ââââââââââââââââââââââââââââââââââââââ 601 602 $(document).on('forminator:form:submit:success', function (event) { 603 var formId = $(event.target).find('input[name="form_id"]').val(); 604 pushEvent('forminator', formId, event.target); 605 }); 606 607 // ââ 5. Formidable Forms ââââââââââââââââââââââââââââââââ 608 // a) AJAX â frmFormComplete fires 609 // b) Non-AJAX page reload â .frm_message present on load 610 611 var frmTrackedForms = {}; 612 613 $(document).on('frmFormComplete', function (event, form) { 614 var formId = $(form).find('input[name="form_id"]').val(); 615 if (formId) frmTrackedForms['frm_' + formId] = true; 616 pushEvent('formidable', formId, form); 617 }); 618 619 // Non-AJAX: detect success message rendered after page reload 620 $('.frm_message').each(function () { 621 var wrapper = $(this).closest('.frm_forms'); 622 var formId = wrapper.find('input[name="form_id"]').val() || 623 (wrapper.attr('id') || '').replace('frm_form_', '').replace('_container', ''); 624 if (formId && !frmTrackedForms['frm_' + formId]) { 625 frmTrackedForms['frm_' + formId] = true; 626 pushEvent('formidable', formId, wrapper.find('form')[0] || null); 627 } 628 }); 629 630 // ââ 6. Ninja Forms âââââââââââââââââââââââââââââââââââââ 631 632 if ($.fn.onFirst) { 633 $(document).onFirst('nfFormSubmitResponse', function (event, data) { 634 var formId = data.response.data.form_id; 635 pushEvent('ninja_forms', formId, event.target); 636 }); 637 } else { 638 $(document).on('nfFormSubmitResponse', function (event, data) { 639 var formId = data.response.data.form_id; 640 pushEvent('ninja_forms', formId, event.target); 641 }); 642 } 643 644 // ââ 7. Fluent Forms ââââââââââââââââââââââââââââââââââââ 645 646 $(document).on('fluentform_submission_success', function (event, data) { 647 if (!data || !data.form) return; 648 var formId = data.config.id; 649 pushEvent('fluent_forms', formId, data.form[0] || event.target); 650 }); 651 652 // ââ 8. WS Form ââââââââââââââââââââââââââââââââââââââââ 653 654 $(document).on('wsf-submit-complete', function (event, formObject, formId) { 655 pushEvent('ws_form', formId, event.target); 656 }); 657 658 // ââ 9. Elementor Forms âââââââââââââââââââââââââââââââââ 659 660 function observeElementorForm(form) { 661 var observer = new MutationObserver(function (mutations) { 662 for (var i = 0; i < mutations.length; i++) { 663 if (form.querySelector('.elementor-message-success')) { 664 var formId = form.getAttribute('id') || 665 (form.querySelector('input[name="form_id"]') || {}).value || ''; 666 pushEvent('elementor_form', formId, form); 667 observer.disconnect(); 668 return; 669 } 670 } 671 }); 672 673 observer.observe(form, { 674 attributes: true, 675 childList: true, 676 subtree: true 677 }); 678 } 679 680 // existing forms on page 681 document.querySelectorAll('.elementor-form').forEach(function (form) { 682 observeElementorForm(form); 683 }); 684 685 // forms inside Elementor popups (loaded dynamically) 686 var popupObserver = new MutationObserver(function (mutationsList) { 687 for (var i = 0; i < mutationsList.length; i++) { 688 var popupForm = document.querySelector('[class*="elementor-popup"] form'); 689 if (popupForm) { 690 observeElementorForm(popupForm); 691 popupObserver.disconnect(); 692 break; 693 } 694 } 695 }); 696 popupObserver.observe(document.body, { childList: true, subtree: true }); 697 698 // ââ 10. Enfold (Avia) Contact Forms âââââââââââââââââââââââ 699 // 700 // Enfold forms submit via AJAX and do not fire custom JS events. 701 // On success the form slides up and the response container 702 // (#ajaxresponse_{id}) becomes visible with an .avia-form-success heading. 703 // We use a MutationObserver to detect this DOM change. 704 705 var enfoldTracked = {}; 706 707 function observeEnfoldResponse(responseEl) { 708 var observer = new MutationObserver(function () { 709 if (responseEl.classList.contains('hidden') || 710 responseEl.style.display === 'none') { 711 return; 712 } 713 714 if (!responseEl.querySelector('.avia-form-success')) { 715 return; 716 } 717
718 var formId = (responseEl.id || '').replace('ajaxresponse_', ''); 719 if (enfoldTracked[formId]) return; 720 enfoldTracked[formId] = true; 721 722 var formEl = responseEl.parentElement 723 ? responseEl.parentElement.querySelector('form.avia_ajax_form') || 724 responseEl.parentElement.querySelector('form.ajax_form') 725 : null; 726 727 pushEvent('enfold', formId, formEl); 728 observer.disconnect(); 729 }); 730 731 observer.observe(responseEl, { 732 attributes: true, 733 attributeFilter: ['class', 'style'], 734 childList: true, 735 subtree: true 736 }); 737 } 738 739 document.querySelectorAll('.ajaxresponse').forEach(function (el) { 740 observeEnfoldResponse(el); 741 }); 742 743 }); 744 745 // ââ 11. HubSpot Forms v3 âââââââââââââââââââââââââââââââââââ 746 // 747 // v3 forms communicate via window.postMessage. On success the 748 // message payload carries the form ID, conversion ID, and field values. 749 750 window.addEventListener('message', function (event) { 751 if (event.data.type === 'hsFormCallback' && 752 event.data.eventName === 'onFormSubmitted') { 753 754 pushEvent( 755 'hubspot_v3', 756 event.data.id, 757 null, 758 { 759 conversion_id: event.data.data.conversionId 760 } 761 ); 762 } 763 }); 764 765 // ââ 12. HubSpot Forms v4 âââââââââââââââââââââââââââââââââââ 766 // 767 // v4 forms fire a custom DOM event. Field values are fetched 768 // asynchronously via the HubspotFormsV4 API. 769 770 window.addEventListener('hs-form-event:on-submission:success', function (event) { 771 if (typeof HubspotFormsV4 === 'undefined') return; 772 773 var hsForm = HubspotFormsV4.getFormFromEvent(event); 774 if (!hsForm) return; 775 776 pushEvent( 777 'hubspot_v4', 778 hsForm.getFormId(), 779 null, 780 { 781 conversion_id: hsForm.getConversionId() 782 } 783 ); 784 }); 785 786 // ââ 13. Lead form submissions âââââââââââââââââââââââââââââ 787 // 788 // Lead forms dispatch a custom 'wpseoai:lead_form_submit' event on 789 // successful submission. The event detail may carry formId and any 790 // additional metadata the form wishes to surface. 791 792 document.addEventListener('wpseoai:lead_form_submit', function (event) { 793 pushEvent('wpseoai_lead_form', '', null); 794 }, false); 795 796 // ââ 14. Pipedrive LeadBooster Forms ââââââââââââââââââââââââââ 797 // 798 // Pipedrive forms are embedded as iframes and post a message to the 799 // parent window on submission. The payload includes formUUID which 800 // serves as the form identifier. 801 802 window.addEventListener('message', function (event) { 803 var data = event.data; 804 if (!data || data.event !== 'pipedrive_form_submit') return; 805 806 pushEvent('pipedrive', data.formUUID || '', null, null); 807 }); 808 809 // ââ 15. Leadoo ââââââââââââââââââââââââââââââââââââââââââââââââ 810 // 811 // Leadoo pushes a { event: 'LEAD' } object to window.dataLayer on 812 // form submission. We wrap dataLayer.push to intercept it. 813 // The _busy guard prevents re-entrancy from our own pushEvent calls. 814 815 (function () { 816 var dl = window.dataLayer; 817 if (!dl || typeof dl.push !== 'function') return; 818 819 var _orig = dl.push.bind(dl); 820 var _busy = false; 821 822 dl.push = function () { 823 if (!_busy) { 824 for (var i = 0; i < arguments.length; i++) { 825 var item = arguments[i]; 826 if (item && typeof item === 'object' && item.event === 'LEAD') { 827 _busy = true; 828 try { 829 pushEvent('leadoo', '', null, null); 830 } finally { 831 _busy = false;
832 } 833 } 834 } 835 } 836 return _orig.apply(null, arguments); 837 }; 838 }()); 839 840 // ââ 16. tel: and mailto: link clicks ââââââââââââââââââââââ 841 // 842 // Uses event delegation on document so dynamically injected links 843 // (popups, live chat widgets, etc.) are captured without re-binding. 844 // closest() walks up the DOM in case the click lands on a child 845 // element inside the anchor (e.g. an icon or span). 846 // hrefLower handles uppercase protocol variants (e.g. TEL:, MAILTO:). 847 848 document.addEventListener('click', function (event) { 849 var anchor = event.target.closest('a[href]'); 850 if (!anchor) return; 851 852 var href = anchor.getAttribute('href') || ''; 853 var hrefLower = href.toLowerCase(); 854 var linkText = anchor.textContent.trim(); 855 856 if (hrefLower.indexOf('tel:') === 0) { 857 pushLinkClick('wpseoai_tel_click', 'tel', href.slice(4), linkText); 858 } else if (hrefLower.indexOf('mailto:') === 0) { 859 pushLinkClick('wpseoai_mail_click', 'mailto', href.slice(7), linkText); 860 } 861 }, false); 862 863})(); 864 865//# sourceURL=seoaiwp-form-tracking-js-after 866</script>
866 867 868</div> 869 870</body> 871</html> 872 873<!--Cached using Nginx-Helper on 2026-10-02 13:29:52. It took 8 queries executed in 0,552 seconds.--> 874<!--Visit http://wordpress.org/extend/plugins/nginx-helper/faq/ for more details--> 875<!-- plugin=object-cache-pro client=phpredis metric#hits=2800 metric#misses=9 metric#hit-ratio=99.7 metric#bytes=1219069 metric#prefetches=0 metric#store-reads=91 metric#store-writes=7 metric#store-hits=218 metric#store-misses=3 metric#sql-queries=8 metric#ms-total=561.68 metric#ms-cache=9.95 metric#ms-cache-avg=0.1026 metric#ms-cache-ratio=1.8 sample#redis-hits=1515355137 sample#redis-misses=94430099 sample#redis-hit-ratio=94.1 sample#redis-ops-per-sec=949 sample#redis-evicted-keys=0 sample#redis-used-memory=357620704 sample#redis-used-memory-rss=401256448 sample#redis-memory-fragmentation-ratio=1.1 sample#redis-connected-clients=5 sample#redis-tracking-clients=0 sample#redis-rejected-connections=0 sample#redis-keys=8974 -->
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.