早期搜尋引擎
網站管理員以及網路內容提供者在90年代中期開始使用搜尋引擎來優化網站。此時第一代搜尋引擎開始對網際網路分門別類。其實一開始所有網站員要做的事只有提交所屬網站到各家搜尋引擎。這些引擎跑一些蜘蛛機器人(spider)──擷取於網頁程式中找到連至其他網頁的連結,並且儲存所找到的資料。過程中同時包含了將網頁下載並儲存至搜尋引擎擁有者的伺服器中,這時有另外一個軟體稱為Indexer來擷取頁面中不同的資訊——頁面中的文字、文字的位置、文字的重要性以及頁面所包含的任何連結,之後將頁面置入清單中等待過些時日後,再來擷取一次。隨著資訊科技時代來臨文件數目日積月累,越來越多網站員意識到基本搜尋(organicsearch,亦翻為隨機搜尋)條目的重要性,所以較普及的搜尋引擎公司開始整理他們的列表,以顯示根據最洽當適合的網頁為優先。搜尋引擎與網站員的戰爭就此開始,並延續至今。
一開始搜尋引擎是被網站管理員本身牽著走的。早期版本的搜尋演算法有賴於網站員提供資訊,如關鍵字的基本定義標籤(metatag)。當某些網站員開始濫用標籤,造成該網頁排名與連結無關時,搜尋引擎開始捨棄標籤並發展更複雜的排名演算法。
當代搜尋引擎
Google由兩名在史丹福大學的博士生佩吉(LarryPage)和布林(SergeyBrin)開始。他們帶來了一個給網頁評估的新概念。這個概念稱網頁級別(PageRank),是從Google演算法重要的開端。網頁級別十分倚賴導入連結(incominglink),並利用這種每個導入某網頁的連結相當於給該網頁價值投一票的理論建立起邏輯系統。越多導入連結意味著該網頁越有「價值」。而每個導入連結本身價值直接根據該連結從何而來的網頁級別,以及相反的該頁導出連結(outgoinglink)。
在網頁級別幫助下,Google在服務相關的結果上證明它相當優異。Google成為了最普遍和最成功的搜尋引擎。由於網頁級別度量了站點外因數,Google感到它會比頁內因數難以動手腳。
然而道高一尺魔高一丈。網站員們已經開發出對付Inktomi搜尋引擎的連結操作工具和計劃。這些方法證明對Google演算法一樣管用。許多站集中於交換、買賣大量連結。隨著網站員尋求獲取連結只單單要影響Google送更多流量給該站,而不管是否對站點訪客有用否這種行為增加,網頁級別對原始演算法的信賴度漸漸被破壞了。
此時,是Google和其他查尋引擎對廣大範圍的站外因數仔細檢視的時候。開發更加聰明的演算法有其他原因。網際網路已經膨脹到擁有非技術的廣大族群。他們經常無法使用先進的提問技術來取得資訊;而且他們得面對比起發展早期更龐大資料、更複雜的索引。搜尋引擎必須開發具備預測性、語義性、語言性和啟發性演算法。
目前,網頁級別的縮小版仍然被顯示在Google工具條上,不過網頁級別只不過是Google考慮在網頁分級時超過100個因素裡中的一個。目前大多數搜尋引擎對它們的如何評等的演算法都一直保持高度秘密。搜尋引擎也許使用上百因素在排列目錄;每個因素本身和因素所佔比重都會不斷的在改變。大部分當代搜尋引擎優化的思路──哪些有效、哪些沒效──這些很大部分在於觀察、網路資訊交流、或是SEO公司彼此交換得來的經驗。