On producing ads revenue and its moral value …

May 26th, 2008 by matthias

As you can see, we have Google AdSense advertisements on this blog. This is because this blog was originally intended to be just a business tool, for generating ads revenue with content that lurked around unpublished here.

Now, with the first weeks of active advertisements, it might be time for a first evaluation.

Before doing that, here is my original calculation of the expected money:

  • In 2008-02 and 2008-03, my personal weblog had 400 unique visitors and 600 pageviews a month, generated nearly exclusively from the 7 IT articles on it via search engine traffic.
  • Therefore, each technical article is worth 60-90 page views a month.
  • Therefore, the 1100 FAQ articles which are online here on doit.juii.net, equivalenting 500 longer technical articles, are worth 45,000 page views a month.
  • Then I assumed an Google AdSense eCPM (earning per 1000 page views with ads) value of 1,50 EUR. This seemed realistically when comparing cyDome’s eCPM comparison values for computer topic.
  • 45,000 page views with 1,50 EUR eCPM should be 72,50 EUR a month. More realistically: between 50 and 100 EUR a month.

Now comes current reality: we had 1,381 page impressions, one AdSense click, resulting in 0,13 USD total earnings and 0,09 USD eCPM. May I call this frustrating? With current values, I expect 2,000 page views a month and 0,20 USD total income a month. Even worse, the one click is due to technical evaluation / testing purposes! :-(

The reasons for this bad performance seems to be that most articles deal with Linux, and Linux users generally avoid to pay money for anything. They really won’t click on advertisements … .

Let’s now look how some big players do the job.

The result is, in my view: to make a really good amount of money, most important is you need a topic that sells ads (and Linux is poorest for that). Nonsense sells, and, of course, sex sells. But we don’t wanna get into that business, do we. Good ads earnings nearly always compromise good morals. Another thought is this: earning money with a website is reproducable (e.g. by following the how-to of John Chow), but what do you get for that? A day full of the most boring IT work you could imagine: search-engine optimization, tricking search engines, getting advertisements, comparing figures and statistics, HTML and CSS templating, and writing some dummy content where people are interested in. That’s nothing to get passionat about at all, but it seems to be a near full-time job. And instead of filling my life with such stuff, I’m going to select something where I can be passionate about … .

Posted in Google, Internet-Werbung, Sprache: Englisch, alle Artikel | No Comments »

How can I check a website’s Google pagerank?

May 26th, 2008 by matthias

The most obvious possibility is to use the Google Toolbar for your browser.

Alternatively, you can use different websites. For example, this one offers checking the page rank of up to 10 sites in parallel:

Top25Web pagerank checker

Posted in Google, Linux, Sprache: Englisch, alle Artikel | No Comments »

Wie kann ich selbst verursachten Traffic vom Logging per Google Analytics ausschließen?

May 8th, 2008 by matthias

Siehe www.google.com/support/googleanalytics/bin/answer.py?answer=55481&hl=en_US

Je nach Site kann es schwierig sein, diese Anleitung zu befolgen, z.B. weil man keine Möglichkeit hat, ein »onLoad«-Attribut in das body-Tag im Template der Site einzufügen. Es gibt mehrere Workarounds (hier bezogen auf die neue Variante des Tracking-Codes):

  1. Man besuche eine URL der Site von der man den eigenen Traffic ausschließen will und gibt dann in der Adresszeile seines Browsers ein:

    javascript:pageTracker._setVar('test_value');

    Dadurch wird das benötigte Cookie gesetzt. Nachprüfen lässt sich das in der Cookie-Liste des Browsers.

  2. Man erstelle eine Inhaltsseite (am besten nur nach login zugänglich) mit einem Absatz der bei Click das Cookie erzeugt. Dies ist zumindest in Joomla 1.5 jedoch nicht ohne weiteres möglich da Joomla JavaScript-Code wieder entfernt, vermutlich aus Sicherheitsgründen. Beispielcode, noch ungetestet:
    1. <p style="border: 10px solid black; background-color: #ff0000"
    2.   onClick="javascript pageTracker._setVar(’test_value’);">
    3.   Bitte klicken Sie auf diesen Bereich um den durch Sie verursachten Traffic auf dieser Seite
    4.   von der Analyse durch Google Analytics auszunehmen. Durch Click auf diesen Bereich wird ein
    5.   Cookie in ihrem Browser gesetzt, also sorgen Sie bitte dafür dass Cookies in ihrem
    6.   Browser zugelassen werden.
    7. </p>
  3. Ein Cookie manuell erzeugen mit dem Webdeveloper-Plugin von Firefox. Hier für die alte Version des Tracking-Codes (»Tools -> Web Developer -> Cookies -> Add Cookie …«). Man gebe dabei folgende Daten ein:
    Name: __utmv
    Value: 25940091.no_report
    Host: .nxdfkoze.blogspot.com
    Path: /
    Expires: 18.01.2038 01:00:00

    Statt der Zahl »25940091« verwende man die Zahl die auch in den anderen von Google Analytics gesetzten Cookies zu Beginn des Inhalts steht. Und bei Host gebe man die Domain oder Subdomain ein auf der die eigenen Website gehostet wird.

  4. Liste weiterer Workarounds: Posted in Google | 1 Comment »

Wie kann ich in Google Maps URLs erstellen bei denen die Seitenleiste nicht angezeigt wird?

May 2nd, 2008 by matthias

Bei folgender URL wird die Seitenleiste angezeigt:

http://maps.google.de/?ie=UTF8&om=1&z=18&ll=14.485804,121.026077&spn=0.0024,0.003648&t=k

Bei folgender URL wird die Seitenleiste nicht angezeigt:

http://maps.google.de/?ie=UTF8&om=0&z=18&ll=14.485825,121.026067&spn=0.002394,0.005407&t=k&q=Manila

Ausschlaggebend ist also die GET-Variable »q« (Query). Sie muss zum angezeigten Gebiet passen und darf zu keiner Fehlermeldung oder Auswahl führen - diese Dinge werden nämlich auch in der Seitenleiste angezeigt.

Posted in Google | No Comments »

Wie kann ich eine vollständige Neuindexierung meiner Homepage bei Google erreichen? Von meiner Homapage sind viele fehlerhafte Links permanent bei Google indexiert, und ich möchte sie nicht alle manuell mit dem URL Removal Tool entfernen.

April 15th, 2008 by matthias

Man versuche, die Seite für eine kurze Zeit aus dem Netz zu nehmen. Dann kann man im URL Removal Tool die ganze Site löschen lassen. Evtl. reicht es, sie »für Google« aus dem Netz zu nehmen, d.h. eine Antwort speziell für diesen User Agent zu generieren.

Posted in Google | No Comments »

Wie kann ich alle URIs herausfinden, die sich von einer Domain in Googles Index befinden?

April 10th, 2008 by matthias

Eine Suche wie »site:example.com« listet alle Suchergebnisse, die irgendwie bei Google registriert sind, inkl. Supplemental Results. Synonym wäre hier »allinurl:example.com«, der »allinurl:«-Operator ermöglicht jedoch auch, nach mehreren Wörtern zu suchen die alle in der URL vorkommen müssen.

Posted in Google | No Comments »

Wie kann ich erreichen, dass Google veraltete URLs auf meiner Homepage auch nicht als “Supplemental Results” ausgibt? Meine Webseite existiert in einer neuen Version, alle alten URLs befinden sich jedoch noch in Googles »Supplemental Index«, obwohl sie schon seit langem nur zu einem »Error 404: Page not found« führen.

April 10th, 2008 by matthias

Für Inhalte, die sich nun an anderer Stelle befinden, gebe man »301 Moved Permanently« zurück. Googlebot versteht das, Google schlägt es sogar selbst so vor. Quelle: www.geocities.com/googlepubsupgenfaq/?20055#newversionredirect301 .

Für Inhalte, die es nicht mehr gibt, gebe man »410 Gone« zurück. Googlebot versteht das: die entsprechende URI wird aus Googles Index entfernt und auch nicht mehr neu darin aufgenommen. Quelle: www.webmasterworld.com/forum30/27921.htm .

Um noch existierende Inhalte aus dem Google Index zu entfernen, verwende man das Robots Exclusion Protocol in robots.txt oder META-Tags (siehe www.robotstxt.org und hacks.oreilly.com/pub/h/220 ).

Hat man eines dieser Mittel angewandt, kann man entweder warten bis Googlebot wieder vorbeikommt und die Seite indexiert (dauert bis 8 Wochen). Schneller geht es, indem man die URIs, unter denen jetzt die Error Codes zurückgegeben werden, bei Googles urlconsole removal tool ( services.google.com:8882/urlconsole/controller ) registriert (dauert zwischen 24 Stunden und (erfahrungsgemäß) 6 Tagen). Quelle: www.webmasterworld.com/forum30/27921.htm . Das funktioniert jedoch nur bei URLs, unter denen »410 Gone« oder »404 Not Found« zurückgegeben wird. Wird »310 Moved Permanently« zurückgegeben, weist Googles urlconsole die Anforderung zurück mit der Meldung »Die Seite scheint nach wie vor im Web zu existieren.«. In diesem Fall muss man warten, bis Googlebot vorbeikommt.

Interessanterweise wird also über urlconsole eine URI gelöscht, unter dem »404 Not Found« zurückgegeben wird. Dieselbe URI kann aber problemlos Jahre in Googles Supplemental Index bleiben (ob Googlebot sie in dieser Zeit überhaupt besucht hat war in diesem Fall nicht festzustellen).

Weitere Informationen um Inhalte aus Google’s Websuche, Bildersuche und Google Groups zu entfernen: www.google.com/remove.html#exclude_pages und hacks.oreilly.com/pub/h/220 .

Das beste Verfahren, um den Google Index (inkl. Supplemental index) für eine eigene Domain zu bereinigen, ist also: alle URIs die zu »404 Not Found« führen bei Googles urlconsole eintragen. Nachdem sie aus dem Index entfernt sind, herausfinden welche Seiten immer noch abgerufen werden, trotz dass sie »404 Not Found« zurückgeben (es sind Seiten, auf die Links existieren die nicht von Google kommen). Diese Seiten in der
.htaccess mit besseren Fehlercodes versehen, um den Nutzern zu helfen: »301 Moved Permanently« und »410 Gone«. Für Google ist das nicht nötig, weil die Seite ja ohnehin bald neu indexiert wird.

Wie konfiguriert man nun die Rückgabe der Error Codes 301 und 410? Am einfachsten verwendet man dazu die .htaccess Datei (siehe httpd.apache.org/docs/mod/mod_alias.html.en#redirectperm ). Zum Beispiel:

Wenn man mit PHP arbeit will oder muss, funktioniert dies so: Ein »301 Moved Permanently« wird zusammen mit einem »Location«-Redirect ausgegeben. Letzterer informiert die User Agents über den neuen Ort der angeforderten Seite. In PHP:

  1. header("Status: 301 Moved Permanently");
  2. header("Location: