If you are serious about improving search traffic and are unfamiliar with SEO, we recommend reading this guide front-to-back. We've tried to make it as concise as possible and easy to understand. There's a printable PDF version for those who'd prefer, and dozens of linked-to resources on other sites and pages that are also worthy of your attention.

(function(){"use strict";function s(e){return"function"==typeof e||"object"==typeof e&&null!==e}function a(e){return"function"==typeof e}function u(e){X=e}function l(e){G=e}function c(){return function(){r.nextTick(p)}}function f(){var e=0,n=new ne(p),t=document.createTextNode("");return n.observe(t,{characterData:!0}),function(){t.data=e=++e%2}}function d(){var e=new MessageChannel;return e.port1.onmessage=p,function(){e.port2.postMessage(0)}}function h(){return function(){setTimeout(p,1)}}function p(){for(var e=0;et.length)&&(n=t.length),n-=e.length;var r=t.indexOf(e,n);return-1!==r&&r===n}),String.prototype.startsWith||(String.prototype.startsWith=function(e,n){return n=n||0,this.substr(n,e.length)===e}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}),String.prototype.includes||(String.prototype.includes=function(e,n){"use strict";return"number"!=typeof n&&(n=0),!(n+e.length>this.length)&&-1!==this.indexOf(e,n)})},"./shared/require-global.js":function(e,n,t){e.exports=t("./shared/require-shim.js")},"./shared/require-shim.js":function(e,n,t){var r=t("./shared/errors.js"),i=(this.window,!1),o=null,s=null,a=new Promise(function(e,n){o=e,s=n}),u=function(e){if(!u.hasModule(e)){var n=new Error('Cannot find module "'+e+'"');throw n.code="MODULE_NOT_FOUND",n}return t("./"+e+".js")};u.loadChunk=function(e){return a.then(function(){return"main"==e?t.e("main").then(function(e){t("./main.js")}.bind(null,t))["catch"](t.oe):"dev"==e?Promise.all([t.e("main"),t.e("dev")]).then(function(e){t("./shared/dev.js")}.bind(null,t))["catch"](t.oe):"internal"==e?Promise.all([t.e("main"),t.e("internal"),t.e("qtext2"),t.e("dev")]).then(function(e){t("./internal.js")}.bind(null,t))["catch"](t.oe):"ads_manager"==e?Promise.all([t.e("main"),t.e("ads_manager")]).then(function(e){undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined}.bind(null,t))["catch"](t.oe):"publisher_dashboard"==e?t.e("publisher_dashboard").then(function(e){undefined,undefined}.bind(null,t))["catch"](t.oe):"content_widgets"==e?Promise.all([t.e("main"),t.e("content_widgets")]).then(function(e){t("./content_widgets.iframe.js")}.bind(null,t))["catch"](t.oe):void 0})},u.whenReady=function(e,n){Promise.all(window.webpackChunks.map(function(e){return u.loadChunk(e)})).then(function(){n()})},u.installPageProperties=function(e,n){window.Q.settings=e,window.Q.gating=n,i=!0,o()},u.assertPagePropertiesInstalled=function(){i||(s(),r.logJsError("installPageProperties","The install page properties promise was rejected in require-shim."))},u.prefetchAll=function(){t("./settings.js");Promise.all([t.e("main"),t.e("qtext2")]).then(function(){}.bind(null,t))["catch"](t.oe)},u.hasModule=function(e){return!!window.NODE_JS||t.m.hasOwnProperty("./"+e+".js")},u.execAll=function(){var e=Object.keys(t.m);try{for(var n=0;n=c?n():document.fonts.load(l(o,'"'+o.family+'"'),a).then(function(n){1<=n.length?e():setTimeout(t,25)},function(){n()})}t()});var w=new Promise(function(e,n){u=setTimeout(n,c)});Promise.race([w,m]).then(function(){clearTimeout(u),e(o)},function(){n(o)})}else t(function(){function t(){var n;(n=-1!=y&&-1!=v||-1!=y&&-1!=g||-1!=v&&-1!=g)&&((n=y!=v&&y!=g&&v!=g)||(null===f&&(n=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent),f=!!n&&(536>parseInt(n[1],10)||536===parseInt(n[1],10)&&11>=parseInt(n[2],10))),n=f&&(y==b&&v==b&&g==b||y==x&&v==x&&g==x||y==j&&v==j&&g==j)),n=!n),n&&(null!==_.parentNode&&_.parentNode.removeChild(_),clearTimeout(u),e(o))}function d(){if((new Date).getTime()-h>=c)null!==_.parentNode&&_.parentNode.removeChild(_),n(o);else{var e=document.hidden;!0!==e&&void 0!==e||(y=p.a.offsetWidth,v=m.a.offsetWidth,g=w.a.offsetWidth,t()),u=setTimeout(d,50)}}var p=new r(a),m=new r(a),w=new r(a),y=-1,v=-1,g=-1,b=-1,x=-1,j=-1,_=document.createElement("div");_.dir="ltr",i(p,l(o,"sans-serif")),i(m,l(o,"serif")),i(w,l(o,"monospace")),_.appendChild(p.a),_.appendChild(m.a),_.appendChild(w.a),document.body.appendChild(_),b=p.a.offsetWidth,x=m.a.offsetWidth,j=w.a.offsetWidth,d(),s(p,function(e){y=e,t()}),i(p,l(o,'"'+o.family+'",sans-serif')),s(m,function(e){v=e,t()}),i(m,l(o,'"'+o.family+'",serif')),s(w,function(e){g=e,t()}),i(w,l(o,'"'+o.family+'",monospace'))})})},void 0!==e?e.exports=a:(window.FontFaceObserver=a,window.FontFaceObserver.prototype.load=a.prototype.load)}()},"./third_party/tracekit.js":function(e,n){/**
When referring to the homepage, a trailing slash after the hostname is optional since it leads to the same content ("https://example.com/" is the same as "https://example.com"). For the path and filename, a trailing slash would be seen as a different URL (signaling either a file or a directory), for example, "https://example.com/fish" is not the same as "https://example.com/fish/".
Most pay per click advertising requires that you write a couple of short, descriptive phrases about your service. Don’t underestimate the importance of this – make sure, at a minimum, that your grammar, spelling, and overall language is correct and appropriate for your audience. Also, verify that your language adheres to the rules enforced by the pay per click platform – Google, for example, won’t allow ads with superlatives (“the best,” “the greatest,” etc.), with repeated keywords, or with excessive capitalization.
The Google Toolbar long had a PageRank feature which displayed a visited page's PageRank as a whole number between 0 and 10. The most popular websites displayed a PageRank of 10. The least showed a PageRank of 0. Google has not disclosed the specific method for determining a Toolbar PageRank value, which is to be considered only a rough indication of the value of a website. In March 2016 Google announced it would no longer support this feature, and the underlying API would soon cease to operate.[32]

Data-driven advertising: Users generate a lot of data in every step they take on the path of customer journey and Brands can now use that data to activate their known audience with data-driven programmatic media buying. Without exposing customers' privacy, users' Data can be collected from digital channels (e.g.: when customer visits a website, reads an e-mail, or launches and interact with brand's mobile app), brands can also collect data from real world customer interactions, such as brick and mortar stores visits and from CRM and Sales engines datasets. Also known as People-based marketing or addressable media, Data-driven advertising is empowering brands to find their loyal customers in their audience and deliver in real time a much more personal communication, highly relevant to each customers' moment and actions.[37]
Imagine the page, www.domain.com/index.html. The index page contains links to several relative urls; e.g. products.html and details.html. The spider sees those urls as www.domain.com/products.html and www.domain.com/details.html. Now let’s add an absolute url for another page, only this time we’ll leave out the “www.” part – domain.com/anotherpage.html. This page links back to the index.html page, so the spider sees the index pages as domain.com/index.html. Although it’s the same index page as the first one, to a spider, it is a different page because it’s on a different domain. Now look what happens. Each of the relative urls on the index page is also different because it belongs to the domain.com/ domain. Consequently, the link stucture is wasting a site’s potential PageRank by spreading it between ghost pages.
Exhaustive – Your keyword research should include not only the most popular and frequently searched terms in your niche, but also to the long tail of search. Long-tail keywords are more specific and less common, but they add up to account for the majority of search-driven traffic. In addition, they are less competitive, and therefore less expensive.

PageRank was once available for the verified site maintainers through the Google Webmaster Tools interface. However, on October 15, 2009, a Google employee confirmed that the company had removed PageRank from its Webmaster Tools section, saying that "We've been telling people for a long time that they shouldn't focus on PageRank so much. Many site owners seem to think it's the most important metric for them to track, which is simply not true."[65] In addition, The PageRank indicator is not available in Google's own Chrome browser.
Not all links are counted by Google. For instance, they filter out links from known link farms. Some links can cause a site to be penalized by Google. They rightly figure that webmasters cannot control which sites link to their sites, but they can control which sites they link out to. For this reason, links into a site cannot harm the site, but links from a site can be harmful if they link to penalized sites. So be careful which sites you link to. If a site has PR0, it is usually a penalty, and it would be unwise to link to it.
An omni-channel approach not only benefits consumers but also benefits business bottom line: Research suggests that customers spend more than double when purchasing through an omni-channel retailer as opposed to a single-channel retailer, and are often more loyal. This could be due to the ease of purchase and the wider availability of products.[24]

Major search engines like Google, Yahoo!, and Bing primarily use content contained within the page and fallback to metadata tags of a web page to generate the content that makes up a search snippet.[9] Generally, the HTML title tag will be used as the title of the snippet while the most relevant or useful contents of the web page (description tag or page copy) will be used for the description.
Digital marketing planning is a term used in marketing management. It describes the first stage of forming a digital marketing strategy for the wider digital marketing system. The difference between digital and traditional marketing planning is that it uses digitally based communication tools and technology such as Social, Web, Mobile, Scannable Surface.[58][59] Nevertheless, both are aligned with the vision, the mission of the company and the overarching business strategy.[60]
Influencer marketing: Important nodes are identified within related communities, known as influencers. This is becoming an important concept in digital targeting. It is possible to reach influencers via paid advertising, such as Facebook Advertising or Google Adwords campaigns, or through sophisticated sCRM (social customer relationship management) software, such as SAP C4C, Microsoft Dynamics, Sage CRM and Salesforce CRM. Many universities now focus, at Masters level, on engagement strategies for influencers.
Another disadvantage is that even an individual or small group of people can harm image of an established brand. For instance Dopplegnager is a term that is used to disapprove an image about a certain brand that is spread by anti-brand activists, bloggers, and opinion leaders. The word Doppelganger is a combination of two German words Doppel (double) and Ganger (walker), thus it means double walker or as in English it is said alter ego. Generally brand creates images for itself to emotionally appeal to their customers. However some would disagree with this image and make alterations to this image and present in funny or cynical way, hence distorting the brand image, hence creating a Doppelganger image, blog or content (Rindfleisch, 2016).
These techniques are used to support the objectives of acquiring new customers and providing services to existing customers that help develop the customer relationship through E-CRM and marketing automation. However, for digital marketing to be successful, there is still a necessity for integration of these techniques with traditional media such as print, TV and direct mail as part of multichannel marketing communications.

As Rich White also said in the comments, just because PR scores are no longer visible doesn’t mean PageRank is a thing of the past. It still matters a lot. PR remains one of Google’s 200+ ranking factors. You need to receive links from quality, on-topic web pages and then properly manage that PR through your website through siloing. These are powerful things you can do to boost your pages’ relevance in search.
When the dust has settled, page C has lost a little PageRank because, having now shared its vote between A and B, instead of giving it all to A, A has less to give to C in the A–>C link. So adding an extra link from a page causes the page to lose PageRank indirectly if any of the pages that it links to return the link. If the pages that it links to don’t return the link, then no PageRank loss would have occured. To make it more complicated, if the link is returned even indirectly (via a page that links to a page that links to a page etc), the page will lose a little PageRank. This isn’t really important with internal links, but it does matter when linking to pages outside the site.

!function(e){function n(t){if(r[t])return r[t].exports;var i=r[t]={i:t,l:!1,exports:{}};return e[t].call(i.exports,i,i.exports,n),i.l=!0,i.exports}var t=window.webpackJsonp;window.webpackJsonp=function(n,r,o){for(var s,a,u=0,l=[];u1)for(var t=1;tf)return!1;if(h>c)return!1;var e=window.require.hasModule("shared/browser")&&window.require("shared/browser");return!e||!e.opera}function a(){var e=o(d);d=[],0!==e.length&&l("/ajax/log_errors_3RD_PARTY_POST",{errors:JSON.stringify(e)})}var u=t("./third_party/tracekit.js"),l=t("./shared/basicrpc.js").rpc;u.remoteFetching=!1,u.collectWindowErrors=!0,u.report.subscribe(r);var c=10,f=window.Q&&window.Q.errorSamplingRate||1,d=[],h=0,p=i(a,1e3),m=window.console&&!(window.NODE_JS&&window.UNIT_TEST);n.report=function(e){try{m&&console.error(e.stack||e),u.report(e)}catch(e){}};var w=function(e,n,t){r({name:n,message:t,source:e,stack:u.computeStackTrace.ofCaller().stack||[]}),m&&console.error(t)};n.logJsError=w.bind(null,"js"),n.logMobileJsError=w.bind(null,"mobile_js")},"./shared/globals.js":function(e,n,t){var r=t("./shared/links.js");(window.Q=window.Q||{}).openUrl=function(e,n){var t=e.href;return r.linkClicked(t,n),window.open(t).opener=null,!1}},"./shared/links.js":function(e,n){var t=[];n.onLinkClick=function(e){t.push(e)},n.linkClicked=function(e,n){for(var r=0;r>>0;if("function"!=typeof e)throw new TypeError;for(arguments.length>1&&(t=n),r=0;r>>0,r=arguments.length>=2?arguments[1]:void 0,i=0;i>>0;if(0===i)return-1;var o=+n||0;if(Math.abs(o)===Infinity&&(o=0),o>=i)return-1;for(t=Math.max(o>=0?o:i-Math.abs(o),0);t>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(t=n),r=0;r>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(t=n),r=new Array(s),i=0;i>>0;if("function"!=typeof e)throw new TypeError;for(var r=[],i=arguments.length>=2?arguments[1]:void 0,o=0;o>>0,i=0;if(2==arguments.length)n=arguments[1];else{for(;i=r)throw new TypeError("Reduce of empty array with no initial value");n=t[i++]}for(;i>>0;if(0===i)return-1;for(n=i-1,arguments.length>1&&(n=Number(arguments[1]),n!=n?n=0:0!==n&&n!=1/0&&n!=-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n)))),t=n>=0?Math.min(n,i-1):i-Math.abs(n);t>=0;t--)if(t in r&&r[t]===e)return t;return-1};t(Array.prototype,"lastIndexOf",c)}if(!Array.prototype.includes){var f=function(e){"use strict";if(null==this)throw new TypeError("Array.prototype.includes called on null or undefined");var n=Object(this),t=parseInt(n.length,10)||0;if(0===t)return!1;var r,i=parseInt(arguments[1],10)||0;i>=0?r=i:(r=t+i)<0&&(r=0);for(var o;r

9. Troubleshooting and adjustment. In your first few years as a search optimizer, you’ll almost certainly run into the same problems and challenges everyone else does; your rankings will plateau, you’ll find duplicate content on your site, and you’ll probably see significant ranking volatility. You’ll need to know how to diagnose and address these problems if you don’t want them to bring down the effectiveness of your campaign.


While working at a Fortune 100 company for nine years before moving to lead my current team, I became fascinated by customer behavior. What kinds of digital offerings most deeply engage customers in their digital lives? I started by looking at some case studies of the products, services, communications and experiences that had been embraced and adopted by customers during the first two decades of the internet. Over a period of seven years working on inbound marketing campaigns, what I found was a recurring pattern of three behaviors that drove the adoption of new digital experiences, which I call the three core behaviors of a network:

What that means to us is that we can just go ahead and calculate a page’s PR without knowing the final value of the PR of the other pages. That seems strange but, basically, each time we run the calculation we’re getting a closer estimate of the final value. So all we need to do is remember the each value we calculate and repeat the calculations lots of times until the numbers stop changing much.
Marketing automation is an integral platform that ties all of your digital marketing together. Without it, your campaigns will look like an unfinished puzzle with a crucial missing piece. Marketing automation software streamlines and automates marketing tasks and workflows. Most importantly, it measures the results and ROI of your digital campaigns, helping you to grow revenue faster.
“I have formed an invaluable marketing partnership with Brick Marketing. Nick Stamoulis and the rest of the Brick Marketing team are professional, timely, thorough and take time to, not only succeed at the tasks, but also educate myself and my team on the strategies in the process. Since my first encounter working with Brick, I’ve changed organizations and have taken them along with me…they are that good! In my experience in working with many outside agencies who over-promise and under-communicate, I can truly state that Brick Marketing is levels above all others and vested in our relationship. They are not just an SEO consultant, but an integral part of my team. I highly recommend Brick Marketing for any company looking to significantly increase search engine competitiveness and internet presence.​”

Every SERP is unique, even for search queries performed on the same search engine using the same keywords or search queries. This is because virtually all search engines customize the experience for their users by presenting results based on a wide range of factors beyond their search terms, such as the user’s physical location, browsing history, and social settings. Two SERPs may appear identical, and contain many of the same results, but will often feature subtle differences.
Establishment of customer exclusivity: A list of customers and customer's details should be kept on a database for follow up and selected customers can be sent selected offers and promotions of deals related to the customer's previous buyer behaviour. This is effective in digital marketing as it allows organisations to build up loyalty over email.[22]
[42] Matteo Pasquinelli reckons the basis for the belief that PageRank has a social component lies in the idea of attention economy. With attention economy, value is placed on products that receive a greater amount of human attention and the results at the top of the PageRank garner a larger amount of focus then those on subsequent pages. The outcomes with the higher PageRank will therefore enter the human consciousness to a larger extent. These ideas can influence decision-making and the actions of the viewer have a direct relation to the PageRank. They possess a higher potential to attract a user’s attention as their location increases the attention economy attached to the site. With this location they can receive more traffic and their online marketplace will have more purchases. The PageRank of these sites allow them to be trusted and they are able to parlay this trust into increased business.

The content of a page is what makes it worthy of a search result position. It is what the user came to see and is thus extremely important to the search engines. As such, it is important to create good content. So what is good content? From an SEO perspective, all good content has two attributes. Good content must supply a demand and must be linkable.
For example, suppose you're a law firm targeting the phrase "divorce attorney" with a broad match ad. Your ad should appear on the results page for the search query "divorce attorney," but it could also show up for the phrases "reasons for divorce," "dui attorney" or "dealing with divorce for children." In these cases, you may be wasting money on irrelevant searches.

I find that companies without a digital strategy (and many that do) don't have a clear strategic goal for what they want to achieve online in terms of gaining new customers or building deeper relationships with existing ones. And if you don't have goals with SMART digital marketing objectives you likely don't put enough resources to reach the goals and you don't evaluate through analytics whether you're achieving those goals.
Place strategic search phrases on pages. Integrate selected keywords into your website source code and existing content on designated pages. Make sure to apply a sug­gested guideline of one to three keywords/phrases per content page and add more pages to complete the list. Ensure that related words are used as a natural inclu­sion of your keywords. It helps the search engines quickly determine what the page is about. A natural approach to this works best. In the past, 100 to 300 words on a page was recommended. Many tests show that pages with 800 to 2,000 words can outperform shorter ones. In the end, the users, the marketplace, content and links will determine the popularity and ranking numbers.
Early versions of search algorithms relied on webmaster-provided information such as the keyword meta tag or index files in engines like ALIWEB. Meta tags provide a guide to each page's content. Using metadata to index pages was found to be less than reliable, however, because the webmaster's choice of keywords in the meta tag could potentially be an inaccurate representation of the site's actual content. Inaccurate, incomplete, and inconsistent data in meta tags could and did cause pages to rank for irrelevant searches.[10][dubious – discuss] Web content providers also manipulated some attributes within the HTML source of a page in an attempt to rank well in search engines.[11] By 1997, search engine designers recognized that webmasters were making efforts to rank well in their search engine, and that some webmasters were even manipulating their rankings in search results by stuffing pages with excessive or irrelevant keywords. Early search engines, such as Altavista and Infoseek, adjusted their algorithms to prevent webmasters from manipulating rankings.[12]