Wealth Management

Sponsored

Saturday, 29 November 2025

Animation 2

 <style>

@import url('https://fonts.googleapis.com/css?family=Lato:100,100i,300,300i,400,400i,700,700i,900,900i');


*

{

margin: 0;

padding: 0;

}


body

{

font-family: 'Lato', sans-serif;

font-size: 14px;

color: #999999;

word-wrap:break-word;

}


p

{

margin: 0 0 10px;

}


ul

{

list-style: none;

}


.container {

width: 100%;

margin: auto;

font-weight: 900;

text-transform: uppercase;

text-align: center;

padding: 0 0 200px;

}


/*.take-input {

  margin: 50px 0 0;

}


.take-input input {

  width: 400px;

  height: 35px;

  padding: 0 10px;

  border-radius: 5px;

  border: 1px solid #ececec;

  margin: 0 15px 0 0;

  font-size: 15px;

}*/


a, a:link, a:visited {

  text-decoration: none;

  padding: 9px 15px;

  border: 1px solid #ececec;

  border-radius: 5px;

  color: gray;

}


.animate {

font-size: 50px;

margin: 100px 0 0;

border-bottom: 2px solid #ccc;

}


.animate span {

display: inline-block;

}


a.repeat {

  display: inline-block;

  font-size: 12px;

  text-transform: none;

  text-decoration: none;

  color: orange;

  padding: 5px 12px;

  border: 1px solid rgba(0, 0, 0, 0.15);

  font-weight: normal;

  margin: 0 0 0 50px;

  border-radius: 3px;

  position: relative;

  bottom: 15px;

}


a.repeat:hover {

  background: rgba(0, 0, 0, 0.7);

  color: white;

}


.animate span:nth-of-type(2) {

animation-delay: .05s;

}

.animate span:nth-of-type(3) {

animation-delay: .1s;

}

.animate span:nth-of-type(4) {

animation-delay: .15s;

}

.animate span:nth-of-type(5) {

animation-delay: .2s;

}

.animate span:nth-of-type(6) {

animation-delay: .25s;

}

.animate span:nth-of-type(7) {

animation-delay: .3s;

}

.animate span:nth-of-type(8) {

animation-delay: .35s;

}

.animate span:nth-of-type(9) {

animation-delay: .4s;

}

.animate span:nth-of-type(10) {

animation-delay: .45s;

}

.animate span:nth-of-type(11) {

animation-delay: .5s;

}

.animate span:nth-of-type(12) {

animation-delay: .55s;

}

.animate span:nth-of-type(13) {

animation-delay: .6s;

}

.animate span:nth-of-type(14) {

animation-delay: .65s;

}

.animate span:nth-of-type(15) {

animation-delay: .7s;

}

.animate span:nth-of-type(16) {

animation-delay: .75s;

}

.animate span:nth-of-type(17) {

animation-delay: .8s;

}

.animate span:nth-of-type(18) {

animation-delay: .85s;

}

.animate span:nth-of-type(19) {

animation-delay: .9s;

}

.animate span:nth-of-type(20) {

animation-delay: .95s;

}



/* Animation One */


.one span {

color: #24a8e6;

opacity: 0;

transform: translate(-150px, -50px) rotate(-180deg) scale(3);

animation: revolveScale .4s forwards;

}


@keyframes revolveScale {

60% {

transform: translate(20px, 20px) rotate(30deg) scale(.3);

}


100% {

transform: translate(0) rotate(0) scale(1);

opacity: 1;

}

}



/* Animation Two */


.two span {

color: #a5cb21;

opacity: 0;

transform: translate(200px, -100px) scale(2);

animation: ballDrop .3s forwards;

}


@keyframes ballDrop {

60% {

transform: translate(0, 20px) rotate(-180deg) scale(.5);

}


100% {

transform: translate(0) rotate(0deg) scale(1);

opacity: 1;

}

}



/* Animation Three */



.three span {

color: #b10e81;

opacity: 0;

transform: translate(-300px, 0) scale(0);

animation: sideSlide .5s forwards;

}


@keyframes sideSlide {

60% {

transform: translate(20px, 0) scale(1);

color: #b10e81;

}


80% {

transform: translate(20px, 0) scale(1);

color: #b10e81;

}


99% {

transform: translate(0) scale(1.2);

color: #00f0ff;

}


100% {

transform: translate(0) scale(1);

opacity: 1;

color: #b10e81;

}

}



/* Animation Four */



.four span {

color: #8d6a00;

opacity: 0;

transform: translate(0, -100px) rotate(360deg) scale(0);

animation: revolveDrop .3s forwards;

}



@keyframes revolveDrop {

30% {

transform: translate(0, -50px) rotate(180deg) scale(1);

}


60% {

transform: translate(0, 20px) scale(.8) rotate(0deg);

}


100% {

transform: translate(0) scale(1) rotate(0deg);

opacity: 1;

}

}



/* Animation Five */



.five span {

color: #dd3f0f;

opacity: 0;

transform: translate(0, -100px) rotate(360deg) scale(0);

animation: dropVanish .5s forwards;

}



@keyframes dropVanish {

30% {

transform: translate(0, -50px) rotate(180deg) scale(1);

}


50% {

transform: translate(0, 20px) scale(.8) rotate(0deg);

opacity: 1;

}


80% {

transform: translate(-100px, -100px) scale(1.5) rotate(-180deg);

opacity: 0;

}


100% {

transform: translate(0) scale(1) rotate(0deg);

opacity: 1;

}

}




/* Animation Six */



.six span {

color: #ddb40f;

opacity: 0;

transform: rotate(-180deg) translate(150px, 0);

animation: twister .5s forwards;

}



@keyframes twister {

10% {

opacity: 1;

}

100% {

transform: rotate(0deg) translate(0);

opacity: 1;

}

}




/* Animation Seven */



.seven span {

color: #348c04;

opacity: 0;

transform: translate(-150px, 0) scale(.3);

animation: leftRight .5s forwards;

}



@keyframes leftRight {

40% {

transform: translate(50px, 0) scale(.7);

opacity: 1;

color: #348c04;

}


60% {

color: #0f40ba;

}


80% {

transform: translate(0) scale(2);

opacity: 0;

}


100% {

transform: translate(0) scale(1);

opacity: 1;

}

}

</style>

<script>

/* This code is not required for the animation. This is only needed for the repeatation */


$(function(){

$('.repeat').click(function(){

    var classes =  $(this).parent().attr('class');

        $(this).parent().attr('class', 'animate');

        var indicator = $(this);

        setTimeout(function(){ 

        $(indicator).parent().addClass(classes);

        }, 20);

    });

});

</script>

<style>

.main-content

.concept.concept-one

- for (var i=1; i<10; i++)

.hover(class="hover-"+i)

h1 Desert

.concept.concept-two

each val, index in ['F','O','R','E','S','T']

.hover

h1= val

.concept.concept-three

.word

each val, index in ['C','A','N','Y','O','N']

.hover

div

div

h1= val

.concept.concept-four

h1 Glacier

.concept.concept-five

h1.word

each val, index in ['M','O','U','N','T','A','I','N','S']

span.char= val

.concept.concept-six

h1.word

each val, index in ['O','C','E','A','N']

span.char= val

.concept.concept-seven

h1 fries

.concept.concept-eight

h1.word

each val, index in ['F','A','L','L','S']

div.char(data-content=val)= val


footer

a(href="https://twitter.com/meowlivia_" target="_blank")

i.icon-social-twitter.icons

a(href="https://github.com/oliviale" target="_blank")

i.icon-social-github.icons

a(href="https://dribbble.com/oliviale" target="_blank")

i.icon-social-dribbble.icons

body {

background: #fff;

font-family: "Comfortaa", sans-serif;

position: relative;

}


footer {

text-align: center;

padding: 1em;

max-width: 80px;

position: fixed;

top: 0;

right: 25px;

a {

text-decoration: none;

display: inline-block;

width: 45px;

height: 45px;

border-radius: 50%;

background: transparent;

border: 1px dashed #fff;

color: #fff;

margin: 5px;

&:hover {

background: rgba(255, 255, 255, 0.1);

}

.icons {

margin-top: 12px;

display: inline-block;

font-size: 20px;

}

}

}


* {

box-sizing: border-box;

}


.main-content {

text-align: center;

text-transform: uppercase;

scroll-snap-type: y mandatory;

position: relative;

height: 100vh;

overflow-y: scroll;

}


.hover,

.word,

h1 {

cursor: pointer;

}


h1 {

position: relative;

color: #fff;

font: 900 60px Montserrat;

text-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);

}


.concept {

position: relative;

padding: 5em;

height: 100vh;

overflow: hidden;

scroll-snap-align: center;

&:before {

content: "";

position: absolute;

width: 100%;

height: 100%;

top: 0;

left: 0;

background: radial-gradient(rgba(0, 0, 0, 0.3), transparent);

opacity: 0;

transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);

}

&:hover:before {

opacity: 0.5;

}

}


.concept-one {

display: grid;

grid: repeat(3, 1fr)/ repeat(3, 1fr);

background: yellow;

padding: 8em;

background: url("https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/desert.jpg")

no-repeat center center / cover;

h1 {

position: absolute;

margin: auto;

left: 0;

right: 0;

top: 50%;

margin-top: -30px;

transition: 0.5s ease;

z-index: 0;

letter-spacing: 25px;

}

.hover {

z-index: 1;

}

.hover-1:hover ~ h1 {

left: 30px;

margin-top: -10px;

}

.hover-2:hover ~ h1 {

margin-top: -10px;

}

.hover-3:hover ~ h1 {

right: 30px;

margin-top: -10px;

}

.hover-4:hover ~ h1 {

left: 30px;

}

.hover-6:hover ~ h1 {

right: 30px;

}

.hover-7:hover ~ h1 {

left: 30px;

margin-top: -50px;

}

.hover-8:hover ~ h1 {

margin-top: -50px;

}

.hover-9:hover ~ h1 {

right: 30px;

margin-top: -50px;

}

}


.concept-two {

display: grid;

grid: 100% / repeat(6, 1fr);

padding: 5em 15em;

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/forest.jpg)

center center / cover;

.hover {

position: relative;

display: grid;

place-items: center;

}

h1 {

color: transparent;

text-align: 0 1px 1px;

-webkit-text-stroke: 2px #fff;

text-shadow: none;

transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);

}

.hover:hover h1 {

transform: scale(1.5);

color: #fff;

-webkit-text-stroke: 2px transparent;

text-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);

}

}


.concept-three {

padding: 5em;

.word {

display: flex;

align-items: center;

max-width: 500px;

margin: auto;

}

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/canyon.jpg)

center center / cover;

.hover {

flex: 1;

display: grid;

height: calc(100vh - 10em);

grid: repeat(2, 2fr) / 100%;

position: relative;

div {

position: relative;

z-index: 5;

}

div:nth-child(1):hover ~ h1 {

margin-top: -10px;

}

div:nth-child(2):hover ~ h1 {

margin-top: -50px;

}

}

h1 {

position: absolute;

margin: auto;

left: 0;

right: 0;

top: 50%;

margin-top: -30px;

transition: 0.3s cubic-bezier(0.23, 1, 0.32, 1);

z-index: 0;

}

}


.concept-four {

height: 100vh;

position: relative;

display: flex;

align-items: center;

justify-content: center;

letter-spacing: 2em;

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/glacier.jpg)

no-repeat center center / cover;

h1 {

display: inline-block;

}

&:hover h1 {

letter-spacing: 25px;

transform: scale(1.3);

transition: 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);

}

}


.concept-five {

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/mountains.jpg)

center center / cover;

display: flex;

align-items: center;

.word {

width: 600px;

margin: auto;

display: flex;

align-items: center;

justify-content: center;

height: 80%;

&:hover {

.char:nth-child(even) {

top: 20px;

}

.char:nth-child(odd) {

top: -20px;

}

}

}

.char {

flex: 1;

position: relative;

display: inline-block;

top: 0;

transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);

}

}


.concept-six {

display: flex;

align-items: center;

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/beach.jpg) top

right / cover;

.word {

width: 550px;

margin: auto;

display: flex;

align-items: center;

justify-content: center;

height: 80%;

&:hover {

.char:nth-child(1) {

margin-top: -30px;

transform: rotate(-20deg);

}

.char:nth-child(2) {

margin: -40px 0px 0 10px;

transform: rotate(5deg);

}

.char:nth-child(3) {

margin: 15px 0 0 10px;

transform: rotate(12deg);

}

.char:nth-child(4) {

margin: -25px 0 0;

transform: rotate(5deg);

}

.char:nth-child(5) {

margin: -40px 5px 0;

transform: rotate(-10deg);

}

}

}

.char {

flex: 1;

transition: 0.3s ease-in-out;

position: relative;

}

}


.concept-seven {

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/fries.jpg)

top center / cover;

display: flex;

justify-content: center;

align-items: center;

h1 {

letter-spacing: 35px;

position: relative;

&:before {

content: "fries";

position: absolute;

margin: auto;

left: 0;

right: 0;

max-width: 400px;

color: transparent;

letter-spacing: 10px;

text-shadow: none;

}

}

&:hover h1:before {

transition: 0.6s ease;

color: rgba(255, 255, 255, 0.8);

animation: jump-out 0.6s ease forwards;

}

}


@keyframes jump-out {

0% {

opacity: 0;

transform: scale(1);

}

20% {

opacity: 1;

}

100% {

opacity: 0;

transform: scale(2);

}

}


.concept-eight {

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/falls.jpg)

center center / cover;

display: flex;

align-items: center;

justify-content: center;

.word {

display: flex;

align-items: center;

justify-items: center;

width: 450px;

height: 80%;

&:hover .char:before {

transition: 0.6s ease;

color: rgba(255, 255, 255, 0.8);

animation: falls 1s ease forwards;

}

&:hover .char:nth-child(1):before {

animation: falls 0.9s ease 0.2s forwards;

}

&:hover .char:nth-child(2n + 3):before {

animation: falls 1s ease 0.3s forwards;

}

}

.char {

flex: 1;

position: relative;

&:before {

content: attr(data-content);

position: absolute;

top: 0;

color: transparent;

text-shadow: none;

}

}

}


@keyframes falls {

0% {

opacity: 0;

top: 0;

}

20% {

opacity: 1;

}

100% {

opacity: 0;

top: 100px;

}

}


</style>




<div class="my-element animate__animated animate__bounce animate__delay-2s">Example</div>

<img class="word" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

<img class="concept-eight" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


<img class="animate__animated animate__fadeInUp animate__delay-3s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


<img class="animate__animated animate__fadeInUp animate__delay-4s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

<img class="animate__animated animate__fadeInUp animate__delay-5s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


</body>

</html>


</body>


</html>

Animation Codes

 <!DOCTYPE html>

<html>

<head>

<style> 

.base {

  padding: 30px;

  width: 100px;

  height: 100px;

  margin-bottom: 20px;

  margin-top: 20px;

  margin-left: 20px;

  box-sizing: border-box;

  background: pink;

}


#example1 {

  animation: rotate 3s ease 1s infinite;

}


@keyframes rotate {

  from {

    transform: rotate(0);

  }


  to {

    transform: rotate(360deg);

  }

}


#example2 {

  animation: rotate_translate 3s linear 1s infinite;

}


@keyframes rotate_translate {

  0% {

    transform: rotate(0);

  }

  50% {

    transform: rotate(180deg);

    margin-left: 70%;

  }

  100% {

    transform: rotate(360deg);

  }

}


#example3 {

  animation: rotate_translate_one_way 1.5s linear 1s infinite alternate;

}


@keyframes rotate_translate_one_way {

  0% {

    transform: rotate(0);

  }

  100% {

    transform: rotate(180deg);

    margin-left: 70%;

  }

}


#example4:hover {

  animation: rotate 3s ease infinite;

}


.base2 {

  margin: 50px 20px;

  font-size: 20px;

}


#bounce {

  animation: bounce 2s linear 1s infinite;

}

@keyframes bounce {

  0% {

    transform: translateY(0);

  }

  20% {

    transform: translateY(-15px);

  }

  30% {

    transform: translateY(0);

  }

  40% {

    transform: translateY(-15px);

  }

  50% {

    transform: translateY(0);

  }

}


#flash {

  animation: flash 2s linear 1s infinite;

}

@keyframes flash {

  20% {

    opacity: 0.1;

  }

  30% {

    opacity: 1;

  }

  40% {

    opacity: 0.1;

  }

  50% {

    opacity: 1;

  }

}


#shake {

  animation: shake 2s linear 1s infinite;

}

@keyframes shake {

  5% {

    transform: translateX(-10px);

  }

  10% {

    transform: translateX(10px);

  }

  15% {

    transform: translateX(-10px);

  }

  20% {

    transform: translateX(10px);

  }

  25% {

    transform: translateX(-10px);

  }

  30% {

    transform: translateX(10px);

  }

  35% {

    transform: translateX(-10px);

  }

  40% {

    transform: translateX(10px);

  }

  45% {

    transform: translateX(-10px);

  }

  50% {

    transform: translateX(0);

  }

</style>

</head>

<body>


<h1>CSS Animation</h1>


<div></div>


<p id="flash"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="bounce"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="shake"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="example1"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="example2"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="example3"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="example4"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="base"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="base2"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


</body>

</html>


<html>


<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<title>Home</title>

<head>

  <link

    rel="stylesheet"

    href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css"

  />

</head>

</head>


<body>

<!DOCTYPE html>

<html>

<body>


<canvas id="myCanvas" width="200" height="100" style="border:1px solid #000;"></canvas>


<script src="animation.js"></script>

<style>

.my-element {

  display: inline-block;

  margin: 0 0.5rem;


  animation: bounce; /* referring directly to the animation's @keyframe declaration */

  animation-duration: 2s; /* don't forget to set a duration! */

}

/* This only changes this particular animation duration */

.animate__animated.animate__bounce {

  --animate-duration: 2s;

}


/* This changes all the animations globally */

:root {

  --animate-duration: 800ms;

  --animate-delay: 0.9s;

}

</style>

<div class="animate__animated animate__bounce animate__delay-2s">Example</div>

<img class="animate__animated animate__fadeInUp animate__delay-1s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

<img class="animate__animated animate__fadeInUp animate__delay-2s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


<img class="animate__animated animate__fadeInUp animate__delay-3s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


<img class="animate__animated animate__fadeInUp animate__delay-4s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

<img class="animate__animated animate__fadeInUp animate__delay-5s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


</body>

</html>


</body>


</html>



Saturday, 1 March 2025

Delta Police Rescue 5 Abducted Church Members After Gunfight With Kidnappers

 The Delta State Police Command’s Special Anti-Kidnapping and Cyber-Crime team has rescued five congregants on Tuesday after they were abducted from Elyon Paradise Ministry in Ogwashi-Uku.

Bright Edafe, the command’s spokesperson, said in a statement on Friday that the police also recovered N1.3 million in ransom and other exhibits during the investigation.

“The deployment to Ogwashi-uku by CP Olufemi Abaniwomda has paid off almost immediately as all five persons kidnapped from the church at Ogwashi-uku on the 22nd February 2025 have all been rescued and a ransom money of #1,300,000, and thirteen expended cartridges were recovered by operatives of the Special Anti-Kidnapping and cyber-crime squad,” said Mr Edafe.

In a video attached to the statement, Mr Edafe said frequent distress calls about kidnappings in the area led the police commissioner to redeploy the DPO and tactical teams, including Dragon, Eagle Net, and RRS, while also relocating the Special Anti-Kidnapping and Cyber-crime Squad to the area until the abducted worshipers were rescued.

“On the 25th of February 2025, the commander (of the squad), CSP Label Joseph led his operatives alongside some vigilantes of Ubulu-Uku community and some concerned human rights activities who are also from that community, to storm the Ubulu-Uku forest.


“Due to their intelligence-led investigation, they trailed these kidnappers to their hideout where upon sighting the policemen, opened fire. The policemen who were also prepared, also gave them the same fire power which eventually became too much for them to bear. They abandoned the victims and fled with gunshot injuries. The five victims who were initially kidnapped on the 22nd of February were all rescued unhurt and they have since been reunited with their families.”

He stated that the kidnappers are still at large but assured that the police are on their trail. He urged the public to trust the police and provide information to help restore peace in the area and the state.

Thursday, 27 February 2025

Health Group Insurance

Within the two businesses, United Health Group has four reporting segments:


Optum Health: The insurance policy provider consumers pay monthly premiums to.

Optum Insight: UNH's data and analytics platform that provides informational and performance analytics services to governments, life science companies, hospitals, health plan administrators, and more.

Optum Rx: UNH's pharmacy care service provider, used by benefit plan providers, large corporate health care plans, and others.

United Healthcare: Provides health care and insurance for employers, individuals, Medicare and retirement plans, and community and state health insurance plans including Medicaid.

#1 United Health Group (UNH)

Revenue: $371.62 billion

Net Income: $22.38 billion

Market Cap: $519.33 billion

1-Year Trailing Total Return: 11.37%

Exchange: New York Stock Exchange


United Health Group was founded in 1977 as United Healthcare and rebranded to its current name in 1998. It is headquartered in Minneapolis, MN, and employs about 400,000 people across two businesses: Optum and United Healthcare.


Friday, 14 February 2025

Google Ads

 1. Headline

Headlines are your first chance to make a connection. A great headline is clear, to the point, and interesting. It needs to match the user’s search intent, so should contain important keywords. Headlines should also touch on customer pain point to increase the chances of a click.

2. Description

Your description is where you make good on your headline’s promise. It’s where you show why clicking your ad is worth their time. Keep it brief but compelling. Highlight the following:

  • Benefits
  • Unique selling points
  • Any special offers

If you can, create urgency (think limited-time deals) to give people a reason to click now.

3. Display URL

The display URL is the web address users see when they look at your ad. Even if it’s not the exact page they’ll land on, it should make sense with the message in your ad.

Here’s an example of a Google Ad URL: www.yourbusiness.com/leather-jacket

Your ad for leather jackets on sale should have a URL like this to reassure users they’re in the right place, potentially increasing click-through rates.

FYI, the average click-through rate for Google Ads campaigns was 3-5% in 2023.

4. Ad Extensions

Google Ads allows you to add “Extensions” to your ad. Here’s a list of all the extensions that you can add to your ad.

  • Sitelink extensions (shown above)
  • Callout extensions
  • Structured snippet extensions
  • Image extensions (shown above)
  • Call extensions
  • Lead form extensions
  • Location extensions
  • Price extensions
  • App extensions
  • Promotion extensions (shown above)
  • Automated extensions (this includes “Seller Ratings” shown above)

Note: Once you have created these elements and activated them, Google may only choose some of them to display on your ad at any one time. This can depend on the position of your ad (top of page typically sees the most ad extensions) or the extensions that receive the best engagement rate.

4. Call To Action

The Call-To-Action (CTA) tells people what to do next. Make sure it’s crystal clear and action-packed—whether it’s “Shop Now,” “Get a Free Quote,” or “Sign Up Today.” A good CTA stands out and pushes users to act immediately.

Rules for writing strong copy for Google Ads

When you’re crafting your Google Ads copy, it’s crucial to stick to Google’s guidelines and best practices. This will keep your ads in line with their standards, but it’ll also help your campaigns perform better (pro tip: stopping fake clicks also helps your Google ads perform better).

Here are 6 general rules to follow for great Google Ads copy:

  • Rule 1: Fully utilize your character limits. Google keeps things tight! Headlines are capped at 30 characters, while descriptions get a bit more room with 90 characters each. The path fields (add-ons to your display URL) max out at 15 characters. Read more: How to maximize Google Ads character limits
  • Rule 2: Use punctuation and symbols. Google allows common punctuation—like commas, periods, question marks, and exclamation points—but you can’t use special characters like brackets, underscores and asterisks. Additionally, spammy symbols will perform poorly, or might not even get approved in the first place. According to a Wordstream study, exclamation points appear in 48% of top-performing branded text Google ads. Use them to drive home the point!
  • Rule 3: Focus on relevance and compliance. Your search ads must be relevant to the product or service being advertised. This is especially important for sensitive topics like gambling. You can also explore all of Google’s ad policy requirements here.
  • Rule 4: No keyword stuffing. Google hates keyword stuffing. Moderation is key.
  • Rule 5: Capitalization. In our experience sentence case or title case copy can give Google search ads a clean polish and makes them look more professional.
  • Rule 6: Dial in your ad groups. Make sure you organize your ads based on a shared theme or set of keywords, which will allow you to create hyper-targeted ads. This improves ad relevance, and increases your Quality Score, leading to better ad performance and lower costs. Keep your ad groups focused by limiting the number of keywords per group. Ideally, aim for 10-20 closely related keywords per ad group to maintain precision. The more specific the ad group, the more relevant your ad will be to the searcher, and that’s what Google likes to see.

How to write effective copy for Google Ads that gets results

Provide clear, relevant copy

Search ad copy should be clear, grammatically correct, and relevant to the offer. Every other ad you’re competing with will have these basics and you don’t want your copy to underperform.

We’ve also found that keeping your copy at an 8th grade reading level is best for performance.

Why? Because 50% of American adults cannot read a book written at an 8th grade level, according to the Washington Post. Plus, simple, direct copy is best for holding users’ attention and guiding them to your CTA.

AdSense Niches

How to Find Profitable Niches for Google AdSense Earnings

As the first step to finding profitable AdSense niches, publishers should explore tools such as Google Ads' Keyword Planner which can provide a good idea of the top paying keywords. 


Additionally, researching leading publishers can also generate insights into profitable niches.


When conducting this research, there are some important parameters publishers need to pay attention to. These include:


1. Traffic Volume 

Higher traffic volume generally translates into a greater chance for more ad clicks, which means higher earnings. As such, AdSense niches with more traffic are more likely to generate higher earnings. 


You can use keyword research to figure out a niche's traffic volume. Researching keywords shows how many people search for a certain topic.


There are many free keyword research tools that can provide insight into the search volume of topics of interest. For more detailed coverage, have a look at this guide on how to check website traffic volume.


2. Cost-Per-Click

Cost-per-click (CPC) determines how much an advertiser will pay for ad clicks. 


Understanding this metric enables publishers to determine which niches will attract the most lucrative paid ad campaigns. They can then develop content strategies that will maximize their ad revenue.


3. Competition 

A niche with high traffic volume might not always be profitable when there's a high level of competition. If there are already a large number of established players competing in a niche, it's likely a hard space to break into it.

You're better off looking for a niche with relatively higher traffic volume but low competition.

Keyword Planner can help you find keywords with high cost per click (CPC) and low competition. 

1. Insurance

2. Cryptocurrency

3. Health and Fitness

4. Real Estate

5. Digital Marketing

6. Online Learning

7. Automobile

8. Make Money Online

9. Personal Finance

10. Online Banking

11. Legal

12. Travel and Accommodation

13. Blogging

14. Web Development

15. Web Hosting


Troops Wipe Out 13 Bandits in Sabon Birni as Residents Celebrate Major Security Win

  Troops Wipe Out 13 Bandits in Sabon Birni as Residents Celebrate Major Security Win SOKOTO: Troops Wipe Out 13 Bandits in Sabon Birni as ...