Does DKI Really Work? [Case Study]

By , Associate Director of Services at Hanapin Marketing


As dynamic series week continues, we’ve covered how to use dynamic parameters in Bing, dynamic ads with scripts and next we will dive into the question across many search engine marketing professionals minds when it comes to ad testing – Does DKI really work? Below we will review – What is DKI? Does it Really Work? DKI Best Practices. 

What is DKI

DKI stands for Dynamic Keyword Insertion. What this means is by using a small piece of code in the ad copy {KeyWord: Insert keyword here} you can insert the user’s query that matches the keyword in your ad group and dynamically place that keyword into the ad copy to help increase relevance.

By altering the capitalization on {KeyWord:} you can alter the capitalization of the keyword in the ad. Below are three different examples of how to alter the capitalization:

1.     {KeyWord: Dirty Diapers}

2.     {Keyword: Dirty diapers}

3.     {keyword: dirty diapers}

DKI can be used in the Headline, Description 1, Description 2 and in the Display URL. Character limitations in ad copy still apply. If the dynamically inserted keyword exceeds the character limit, the term entered after the colon : will be the fall back keyword that will be used. For Example:

Buy {KeyWord: Dirty Diapers}

If the keyword in the ad group that the user searched for was “Where can I buy me some dirty diapers” (I really hope that is not an actual keyword or search query!!), the code would default to Buy Dirty Diapers, which would fall within the headline character limits. 

Here are some links on specifics for using DKI in AdWords and Bing. Below is an example of how DKI is used on Bing.

DKI Params

Does DKI really work?

This question is an ongoing debate amongst the account managers in our office so I wanted to put this to rest by running an analysis across 6 accounts  – 3 lead generation accounts and 3 eCommerce accounts to see how DKI ads performance against Non DKI ads.  Unfortunately I didn’t have enough statistically significant data to include Bing so my case study is strictly for AdWords.



I’ll be honest I was a little surprised by the results. I expected click through rates to be higher but I wasn’t sure about conversion rates. Surprisingly, DKI ads out performed Non DKI ads by a landslide when looking at CTR and CVRs across both eCommerce and lead generation. 

In the select accounts we used in this case study, lead generation seemed to benefit more from DKI. Now each account is a little different, especially depending on how well the campaigns, ad groups and keywords are set-up, but in the small sample we used for the case study, DKI kicked butt!  


DKI Best Practices


Now just because in the above case study we showed that DKI works well doesn’t mean you should go into your account and roll-out across your entire account this could be INCREDIBLY DANGEROUS and even land you in some legal hot water if not set-up correctly. Below are a couple best practices to consider when looking to use DKI.

·      Relevant Landing Pages – Having the keyword in the ad is great for CTR but the end goal is to have them convert. Make sure that the DKI ad and the landing page is relevant to what the user is searching for and you should see conversion rates increase along with CTR.

·      Steer clear of DKI on competitor terms. This could put you in violation of competitor trademarks and competitor terms typically have lower quality scores and are more costly.

·      Watch out for misspellings – If you have been running some search query reports and adding some of the terms to your account, you may have some keywords that are spelled wrong. If you do plan to use DKI try creating a misspelling ad group or campaign so you have them all in one place and can avoid using DKI.

·      ALWAYS REVIEW KEYWORDS AND AD COPY BEFORE USING DKI. It’s always good to review what keywords are in the ad group to make sure that you don’t have a bunch of long tail keywords that sound awkward in the ad copy or may not even be able to be used.

·      Avoid Broad/Generic terms in DKI. Ads can sound very strange if just a single generic term is used. For example “Couch

·      Beware of extra spaces & characters in the code! If you add an extra space or forget a squiggly bracket, your Ad could look like the one below.

·      Long tail keywords can sound funny – DKI performs best when balancing on the fine line between too generic and long tail. Descriptive terms (approx. 2 to 3 words) seem to work best. For example “Red Leather Couch”

·      Make sure the DKI Ad Is Actually Different from the Non DKI. Because you are using a fall back keyword if the users search query is too long, make sure that the fall back keyword and ad copy is different than the other ads you are running. 

Below are a few examples of DKI ads gone wrong.

DKI misspellingsBad DKI


For the 6 accounts I pulled data from, DKI performed great across eCommerce AND lead generation  accounts when used correctly.  It’s hard for me to admit this, but the numbers don’t lie! Just make sure that you very carefully review what your ad will look like; scan keywords in the ad groups; check for extra characters in the code and make sure your landing page is relevant to the users query. If your CTR is struggling in your account, give this a try and let us know how DKI performs for you!

Twitter Facebook LinkedIn Google+ Email Print More

12 thoughts on “Does DKI Really Work? [Case Study]

  1. Bryant Garvin

    That was a little surprising that DKI actually worked good. One thing I think a lot of people forget is that DKI can really be used anywhere in the ad copy. Most people only use it for the title, but really you could plug it in anywhere in the ad copy and would be an interesting and different approach than most people use. Thanks for sharing again!

    1. Cassie OumedianCass_Oumedian

      Hi Bryant, I was kind of surprised myself. I even re-ran the numbers a couple times just to make sure!! But for the 6 accounts I pulled from, DKI always performed better. Excellent point about using DKI in the other areas of the ad texts!! Thanks for reading and contributing your ideas!!!

  2. Melissa Mackey

    Nice analysis! A point of correction, though: DKI doesn’t insert the user’s search query into the ad. That’s a common misconception. DKI inserts the keyword you are bidding on that most closely matches the user’s query into the ad. So if the user searches for “where can I buy used dirty diapers” and you’re bidding on “used dirty diapers” (God forbid) and your ad copy is “Buy {KeyWord:Dirty Diapers}, then the ad will say “Buy Used Dirty Diapers”. Otherwise, great post!

    1. Cassie OumedianCass_Oumedian

      Thanks Melissa! EXCELLENT point that cannot be stressed enough! What I was trying to get across was that the “keyword” that was triggered by the query would be inserted in the ad so thanks for helping clarify. Could you imagine the ads if the actual queries were inserted in the ads?!?! Now that could be scary!! Thanks for reading

  3. Shreyansh Modi

    What are the DKI character limits for Headline & Description Lines?
    It does help in adding in extra characters but what’s the limit?

    1. Cassie OumedianCass_Oumedian

      Hi Shreyansh! The character limits are the same as Non DKI ads. 25 = Headline, 35 = Description 1, 35 = Description 2 (in AdWords). The DKI parameter {KeyWord: } is 11 characters so if you are using excel (Len) to count characters, just add 11 to the original character count to make sure your ads have the correct amount of characters. Hope that helps! Thanks for reading!

  4. Philip O

    I would like to see a DKI test with exact match keywords only. The question is: Does the pure integration of a DKI in the ad text boost the ad performance, or not.

    Any thoughts on that?

  5. gvs praveen

    Does DKI work with trademark terms. Suppose i am bidding on a competitor keyword which is a trademark term. I am using DKI for that keyword, will my ad’s headline/text show the trademark term included?


Leave a Reply

Your email address will not be published. Required fields are marked *