I wouldn't call it a "fine". It seems google is removing credit for the non-human (invalid) clicks. Isn't this what everyone has said they should do? On a side note, I have a large proxy network of about 40+ sites. I've never advertised on proxy.org (free or paid) and I've not had a single problem or letter from google. Just sharing my experience.
i will not be listing any proxies on proxy.org anymore. ever since i did my earnings have dropped dramatically. beware people!
The facts are: He has taken a sophomoric approach to his and he DOES have my money. I can tell you that if I had his business then I would certainly take a more well-planned and PUBLIC approach to solving it. I would be buying as much public "air time: as I could to insure that people don't get the wrong impression. You are certainly on your way to an honorary degree from Harvard Law with this one. Do little research on the complexities for slander suits in general and then do the same for those that are internet related. I am in now way trying to damage his "business" I am satisfying my moral obligation to the other proxy publishers. The people need to be informed so that others do not make mistakes that could negatively impact their businesses.
I'm not saying that you are right or wrong. You asked what basis he had for a countersuit. I told you. Wether he could win or not, I don't know, and honestly, I don't care.
Lucky you. I had a free listing on proxy.org... and i received the email from google... however they took away less than 5 bucks (lucky me my proxy is just starting) but the bottom line here is that we are all screwed for bad. Honestly I have to say that i was stoned about the idea of people having 5k or 10k business on a web proxy platform and i wanted to get involved, it looked easy and reasonable to earn that cash from a proxy... and I wanted a piece of that action. A small guy like me.. (my proxy is 2 months old and have arround 500 visits daily) has been afected....it means everyone with a web proxy is affected. lets see what the future will bring... but definitely i wont wanna run as a big fish on this business anymore.
Good point. Sorry for being abrasive... lack of coffee will do that to a guy. You are correct. This issue will damage the proxy publishers for a very long time to come. Google is certainly looking more closely at proxy sites. Here is a copy of an email that I received just today from Google. This means that some if not alll of the Adsense publishers that advertise on proxy.org will be faced with a decision: drop proxy.org or Adsense will drop you. What does this mean to the rest of the proxy lists? I can only imagine that it means lower eCPM and tighter scrutiny of the sites. Is this a good thing or a bad thing? Well hopefully it will remove some of the rank amateurs from the fray and hopefully the industry as a whole will be improved. The disturbing part of this is that proxy traffic can (and should) be monetized by legal, moral, ethical and natural means. To think that someone could run a clickbot or other machine generated traffic system for any length of time is ridiculous and to think that doing so would destroy the proxy industry is even more ridiculous. Will the industry suffer? Yes. Will it rebound and be stronger? We can only hope, but in my opinion things will be better for what does not destroy me makes me stronger.
Well fr0gman... I'm an amateur myself! I started to read about making cash online... because i hate my job. And I hate it because I found out I'm stuck. I have to kill someone to get a better payrate; and i'm sure if i kill my boss i won't get a 10% of what that bastard is doing; just because he is American and i am Panamanian (I work in a call center as analyst here in Panama). I decided to run a proxy site because they blocked my internet access.. suddenly they just turn it off. I have to hack the server to squeeze out.. then browse proxify.. I'm sure millions of office workers have the same problem and are flagged as "dangerous users" for the stupid guys who run win2k and citrix platforms on neowares or any other dummy stations to restrict any internet access. just by reading that last paragraph is clear that proxys will stay forever; so we as proxy owners have to change... and adapt. The game rulez has changed... so we have to evolve. it sucks.. but it's true. This changes will benefit small guys like me who are getting virtually no traffic from proxy.org; unless google trow the book on everything that say proxy; which IMO is stupid.
If this is true I cannot believe how many publishers that got their account wrongly suspended because of this, we are talking about hundreds. You all should all send a new email to Google telling that you was in the group that was suspended because of proxy.org and ask for reinstatement.
how trivial would it be to make a bot pretend to be sending traffic from proxy.org, in order to harm their reputation? hmm, let me pull some php out of my butt: require_once("curl_http_client.php"); $curl = &new Curl_HTTP_Client(); $referrer = "http://www.proxy.org" $curl->set_referrer("$referrer"); $urlToGet = "http://www.example.com"; $data = $curl->fetch_url($urlToGet); Code (markup): This requires a curl frontend library, which is commonly available. However, it would be trivial to do this in curl without the library, but since its commonly available, why not. I'll paste the curl_http_client.php library below: <?php /** * @version $Id$ * @package dinke.net * @copyright © 2007 Dinke.net * @author Dragan Dinic <dragan@dinke.net> */ /** * Curl based HTTP Client * Simple but effective OOP wrapper around Curl php lib. * Contains common methods needed * for getting data from url, setting referrer, credentials, * sending post data, managing cookies, etc. * * Samle usage: * $curl = &new Curl_HTTP_Client(); * $useragent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"; * $curl->set_user_agent($useragent); * $curl->store_cookies("/tmp/cookies.txt"); * $post_data = array('login' => 'pera', 'password' => 'joe'); * $html_data = $curl->send_post_data(http://www.foo.com/login.php, $post_data); */ class Curl_HTTP_Client { /** * Curl handler * @access private * @var resource */ var $ch ; /** * set debug to true in order to get usefull output * @access private * @var string */ var $debug = false; /** * Contain last error message if error occured * @access private * @var string */ var $error_msg; /** * Curl_HTTP_Client constructor * @param boolean debug * @access public */ function Curl_HTTP_Client($debug = false) { $this->debug = $debug; // initialize curl handle $this->ch = curl_init(); //set various options //set error in case http return code bigger than 300 curl_setopt($this->ch, CURLOPT_FAILONERROR, true); // allow redirects curl_setopt($this->ch, CURLOPT_FOLLOWLOCATION, true); //hack to make code work on windows //if(strpos(PHP_OS,"WIN") !== false) { curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, 0); } } /** * Set username/pass for basic http auth * @param string user * @param string pass * @access public */ function set_credentials($username,$password) { curl_setopt($this->ch, CURLOPT_USERPWD, "$username:$password"); } /** * Set referrer * @param string referrer url * @access public */ function set_referrer($referrer_url) { curl_setopt($this->ch, CURLOPT_REFERER, $referrer_url); } /** * Set client's useragent * @param string user agent * @access public */ function set_user_agent($useragent) { curl_setopt($this->ch, CURLOPT_USERAGENT, $useragent); } /** * Set to receive output headers in all output functions * @param boolean true to include all response headers with output, false otherwise * @access public */ function include_response_headers($value) { curl_setopt($this->ch, CURLOPT_HEADER, $value); } /** * Set proxy to use for each curl request * @param string proxy * @access public */ function set_proxy($proxy) { curl_setopt($this->ch, CURLOPT_PROXY, $proxy); } /** * Send post data to target URL * return data returned from url or false if error occured * @param string url * @param array assoc post data array ie. $foo['post_var_name'] = $value * @param string ip address to bind (default null) * @param int timeout in sec for complete curl operation (default 10) * @return string data * @access public */ function send_post_data($url, $postdata, $ip=null, $timeout=600) { //set various curl options first // set url to post to curl_setopt($this->ch, CURLOPT_URL,$url); // return into a variable rather than displaying it curl_setopt($this->ch, CURLOPT_RETURNTRANSFER,true); //bind to specific ip address if it is sent trough arguments if($ip) { if($this->debug) { echo "Binding to ip $ip\n"; } curl_setopt($this->ch,CURLOPT_INTERFACE,$ip); } //set curl function timeout to $timeout curl_setopt($this->ch, CURLOPT_TIMEOUT, $timeout); //set method to post curl_setopt($this->ch, CURLOPT_POST, true); //generate post string $post_array = array(); if(!is_array($postdata)) { return false; } foreach($postdata as $key=>$value) { $post_array[] = urlencode($key) . "=" . urlencode($value); } $post_string = implode("&",$post_array); if($this->debug) { echo "Post String: $post_string\n"; } // set post string curl_setopt($this->ch, CURLOPT_POSTFIELDS, $post_string); //and finally send curl request $result = curl_exec($this->ch); if(curl_errno($this->ch)) { if($this->debug) { echo "Error Occured in Curl\n"; echo "Error number: " .curl_errno($this->ch) ."\n"; echo "Error message: " .curl_error($this->ch)."\n"; } return false; } else { return $result; } } /** * fetch data from target URL * return data returned from url or false if error occured * @param string url * @param string ip address to bind (default null) * @param int timeout in sec for complete curl operation (default 5) * @return string data * @access public */ function fetch_url($url, $ip=null, $timeout=600) { // set url to post to curl_setopt($this->ch, CURLOPT_URL,$url); //set method to get curl_setopt($this->ch, CURLOPT_HTTPGET,true); // return into a variable rather than displaying it curl_setopt($this->ch, CURLOPT_RETURNTRANSFER,true); //bind to specific ip address if it is sent trough arguments if($ip) { if($this->debug) { echo "Binding to ip $ip\n"; } curl_setopt($this->ch,CURLOPT_INTERFACE,$ip); } //set curl function timeout to $timeout curl_setopt($this->ch, CURLOPT_TIMEOUT, $timeout); //and finally send curl request $result = curl_exec($this->ch); if(curl_errno($this->ch)) { if($this->debug) { echo "Error Occured in Curl\n"; echo "Error number: " .curl_errno($this->ch) ."\n"; echo "Error message: " .curl_error($this->ch)."\n"; } return false; } else { return $result; } } /** * Fetch data from target URL * and store it directly to file * @param string url * @param resource value stream resource(ie. fopen) * @param string ip address to bind (default null) * @param int timeout in sec for complete curl operation (default 5) * @return boolean true on success false othervise * @access public */ function fetch_into_file($url, $fp, $ip=null, $timeout=600) { // set url to post to curl_setopt($this->ch, CURLOPT_URL,$url); //set method to get curl_setopt($this->ch, CURLOPT_HTTPGET, true); // store data into file rather than displaying it curl_setopt($this->ch, CURLOPT_FILE, $fp); //bind to specific ip address if it is sent trough arguments if($ip) { if($this->debug) { echo "Binding to ip $ip\n"; } curl_setopt($this->ch, CURLOPT_INTERFACE, $ip); } //set curl function timeout to $timeout curl_setopt($this->ch, CURLOPT_TIMEOUT, $timeout); //and finally send curl request $result = curl_exec($this->ch); if(curl_errno($this->ch)) { if($this->debug) { echo "Error Occured in Curl\n"; echo "Error number: " .curl_errno($this->ch) ."\n"; echo "Error message: " .curl_error($this->ch)."\n"; } return false; } else { return true; } } /** * Send multipart post data to the target URL * return data returned from url or false if error occured * (contribution by vule nikolic, vule@dinke.net) * @param string url * @param array assoc post data array ie. $foo['post_var_name'] = $value * @param array assoc $file_field_array, contains file_field name = value - path pairs * @param string ip address to bind (default null) * @param int timeout in sec for complete curl operation (default 30 sec) * @return string data * @access public */ function send_multipart_post_data($url, $postdata, $file_field_array=array(), $ip=null, $timeout=600) { //set various curl options first // set url to post to curl_setopt($this->ch, CURLOPT_URL, $url); // return into a variable rather than displaying it curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, true); //bind to specific ip address if it is sent trough arguments if($ip) { if($this->debug) { echo "Binding to ip $ip\n"; } curl_setopt($this->ch,CURLOPT_INTERFACE,$ip); } //set curl function timeout to $timeout curl_setopt($this->ch, CURLOPT_TIMEOUT, $timeout); //set method to post curl_setopt($this->ch, CURLOPT_POST, true); // disable Expect header // hack to make it working $headers = array("Expect: "); curl_setopt($this->ch, CURLOPT_HTTPHEADER, $headers); // initialize result post array $result_post = array(); //generate post string $post_array = array(); $post_string_array = array(); if(!is_array($postdata)) { return false; } foreach($postdata as $key=>$value) { $post_array[$key] = $value; $post_string_array[] = urlencode($key)."=".urlencode($value); } $post_string = implode("&",$post_string_array); if($this->debug) { echo "Post String: $post_string\n"; } // set post string //curl_setopt($this->ch, CURLOPT_POSTFIELDS, $post_string); // set multipart form data - file array field-value pairs if(!empty($file_field_array)) { foreach($file_field_array as $var_name => $var_value) { if(strpos(PHP_OS, "WIN") !== false) $var_value = str_replace("/", "\\", $var_value); // win hack $file_field_array[$var_name] = "@".$var_value; } } // set post data $result_post = array_merge($post_array, $file_field_array); curl_setopt($this->ch, CURLOPT_POSTFIELDS, $result_post); //and finally send curl request $result = curl_exec($this->ch); if(curl_errno($this->ch)) { if($this->debug) { echo "Error Occured in Curl\n"; echo "Error number: " .curl_errno($this->ch) ."\n"; echo "Error message: " .curl_error($this->ch)."\n"; } return false; } else { return $result; } } /** * Set file location where cookie data will be stored and send on each new request * @param string absolute path to cookie file (must be in writable dir) * @access public */ function store_cookies($cookie_file) { // use cookies on each request (cookies stored in $cookie_file) curl_setopt ($this->ch, CURLOPT_COOKIEJAR, $cookie_file); } /** * Get last URL info * usefull when original url was redirected to other location * @access public * @return string url */ function get_effective_url() { return curl_getinfo($this->ch,CURLINFO_EFFECTIVE_URL); } /** * Get http response code * @access public * @return int */ function get_http_response_code() { return curl_getinfo($this->ch,CURLINFO_HTTP_CODE); } /** * Return last error message and error number * @return string error msg * @access public */ function get_error_msg() { $err = "Error number: " .curl_errno($this->ch) ."\n"; $err .="Error message: " .curl_error($this->ch)."\n"; return $err; } } ?> Code (markup): Someone willing to go to the length of creating a botnet to get proxies banned from google, I don't think it's farfetched to think they would also target proxy.org. It's a smart move really, if everybody is too scared to advertise on proxy.org, or even have a free listing there, I personally could get a lot more exposure for my proxies for a lot less money. I know that with some people too scared to get top listings anymore, and with a lot of people hesitant to post their proxies to the list, that gets rid of the huge crowd of people who have been creating and promoting proxies recently. That leaves a lot more room for my listings to get the kind of exposure I would want. I mean, sure, a lot of the things I've said here defend proxy.org, but as to my own personal motivation, it does me a lot of good if people are too scared to list there, more of the pie for me, for less money. But to think that baron is purposely promoting something that will destroy his business, thats rediculous. Given the seriousness of the situation, you may want to bring this possibility to the attention of google, since you seem to be having a personal dialogue with them.
You have a point... and I support what you said on your last paragraph but the bottom line here is... we are all F*cked up. As a side note; is there a way to track these clicks and block ip's for good? (remember.. i'm newbie)
hey, why not take this one step further. google ads are not allowed on framed content. every proxy frames content, and hopefully most of them are smart enough not to put google ads on that portion of the site. but how trivial would it be to make it look like google ads were placed on proxied pages? The url included in the example below, was a url requested by my browser when trying to view a site with google ads on it. I logged the url by looking at the log for a squid proxy I run, when viewing the ad. I'm sure given the structure of the ad url request, and looking at google's javascript for serving ads, one could arbitrarily create ad requests that are valid. Anyway, without further ado, your "get other people in trouble" code is as follows: require_once("curl_http_client.php"); $curl = &new Curl_HTTP_Client(); $referrer = "http://www.proxy.org" $curl->set_referrer("$referrer"); $url = "http://www.proxysite.com"; $data = $curl->fetch_url($url); $referrer = "http://www.proxysite.com/surf.php?q=http%3A%2F%2Fwww.google.com%2F" $curl->set_referrer("$referrer"); $url = "http://pagead2.googlesyndication.com/pagead/show_ads.js"; $data = $curl->fetch_url($url); $url = "http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-[publisher id goes here]&dt=1176779518781&lmt=1171382309&prev_fmts=160x90_0ads_al%2C728x90_as&format=250x250_as&output=html&channel=[ad channel goes here]&pv_ch=[another ad channel goes here]%2B&url=[your fake referrer goes here as well]%2F&color_bg=ebf7fb&color_text=000000&color_link=CC0000&color_url=000000&color_border=d1e2e8&ad_type=text_image&cc=100&u_h=1200&u_w=1920&u_ah=1136&u_aw=1920&u_cd=32&u_tz=-300&u_his=2&u_java=true&u_nplug=28&u_nmime=108"; $data = $curl->fetch_url($url); Code (markup): So now you've just pretended to request an ad from a portion of someone's site where such an ad is not allowed to run. And you've also gone ahead and shown proxy.org as the first referrer, so google blames them for the source of this illegitimate traffic too. I'll leave how to pretend to click on that ad as an excercise to the reader. My point in all this is google needs to do a better job of filtering invalid clicks, rather than just stealing money from publishers when they have done nothing wrong. By not taking these issues seriously, they are affecting entire industries, and in the process, affecting themselves. I know they are trying to protect their interests here. Advertisers want assurances that their ads are being legitimately viewed and clicked on, so google takes a hard line stance. But by the same token, publishers want assurances that the amount of money they are told they are going to be paid will actually show up, and they wont be arbitrarily banned without notice, recourse, or even a reason. I know I wouldn't want to start a website that relied on google ads these days, since it would be so trivial for my competitors to put me out of business. As a positive note, google has some of the brightest engineering minds available to them. I hope that they can figure out a way to filter invalid clicks and impressions, rather than going and simply blaming the webmaster. I know they can do it. My hope in bringing these weaknesses to light is that they will decide to actually do so, rather than pretending that no publisher relations fiasco exists. It does.
i decided to make a few points as well Firstly, i dont know anything. i dont know if proxy.org is sending fake traffic or someone else. but point i have to make is... as we doubt proxy.org... i dout WHOLE OF GOOGLE. no matter how big google guys are... they have always followed totally NON TRANSPARENT approach in considering clicks invalid.. or banning accounts.. or restoring accounts. THEY DO WHAT THEY LIKE. i know they cant say what techniques they use to conclude about 'account banning' but i dont give a damn! if i am a publisher... i have my right to know about why what where and when. google never says it all. How come we never ask google to PROVE something with solid proofs? well, they never give proofs. and so helpless we are... it doesn't make any difference even if we stand up and ask for it. firstly, google just dont count invalid clicks... so if you got 50 clicks and google concluded that only 5 clicks were valid.. then it will show only 5 clicks. Now, after that... google tells you that they'll take away xx % of you earnings from that 5 clicks coz some of them were bot clickd. LOL so perfect is the system. i love google. but fact is, they are totally... nvm. now about this issue... frogman.. would you be kind enough to tell us how come google is having so nice an interesting conversations with you personally? well they never replied to my mails. the last thing i can predict is.. its difficult to be no.1 and the one who is no.1 faces lots of spams. maybe proxy.org is also facing it?
All I can say is, I was very (VERY) persistent in my communication. Google is like any other large company. They have real live humans pulling the levers behind the curtains. All you have to do is grab the attention of ONE of those people and you can open lines of communication. It helps if you have something to offer. In this case, I brought to their attention what seems to be a very large click fraud issue. Keep in mind that I contacted proxy.org about the same problem long before I went to Google. Google chose to act and proxy.org chose to take the low road. There is a plethora of different ways that proxy.org could or should have positioned themselves that would have made this a much more pleasant experience for everyone. If you have lost your account due to this issue then I apologize. You can blame me for turning the Google microscope toward your account, proxy.org and the proxy industry in general. But please understand that I did this AFTER proxy.org refused to do anything.
thanks for dropping my earnings lol and i hope it gets resolved. these things happen and i rather be legit than not. so many proxy owners affected and it will be helpful. so many people will bail on the business that will open it up for the bigger fish. i guess i can say thank you lol
I don't blame you dude.. after all... i think i read something you wrote about your proxy been a 20k monthly business... I want to make that money !!!
I am in total agreement with you here and your statements beg the question: Do the same expectations extend to proxy.org? People have said, "proxy.org offers no written assurances. You are simply buying an ad." You say, "Advertisers want assurances that their ads are being legitimately viewed and clicked on..." If we take a simple exercise in psychology and replace the name "Google" in your statement with "proxy.org" are we left with something that makes sense? When we read this altered paragraph are we left with the feeling that website owners that sell ads have an intrinsic responsibility to insure the validity of their service? My point is that we should not be focusing our barbs toward Google for taking action that they deemed appropriate and excusing proxy.org for diong nothing to protect their interests, customers, users or the industry. Google is the Top Dog in the PPC industry and therefore we look to them to police the industry. Some would argue that they do a poor job while others would say that in the face of the amount of data and traffic that they have to deal with they are doing a fine job. For the moment proxy.org is the Top Dog in the proxy listing niche. Should they not be expected to be comparably responsible for policing their own traffic? Granted there will always be a new bot, script, exploit or virus that evades detection, but to simply dismiss concerns for the sake of profit shows a very poorly woven set of ethics. I have heard from others that they notified proxy.org of possible problems back in October. I know for a fact that I notified them weeks ago and scores of people have received notifications from Google that they must discontinue monetizing proxy.org traffic with Adsense yet the owner of proxy.org has made no overt moves to solve the problem. In fact he continues to take ad revenue from people with apparent disregard for the integrity of his traffic. Is this a situation that you want to trust?
The difference here is one of making false claims. Google makes the claim that every time your ad is shown, it is shown to someone interested in your service because of advanced targeting methods. Furthermore, they claim that every time you pay for your ad, that is, every time it is clicked, it is clicked by a real person who may be interested in your service. If those claims are largely false, it will greatly diminish the value of the adwords proposition and open them up to being sued on a large scale. On the other hand, proxy.org's only claim is that your site will be listed in preferential rotation for a given length of time. They have ad rates that are as low as $20 per month. If you are unsure as to the value of the ads they provide, you only need risk $20 and take the time to look at the performance of the ad via your server logs to decide if you should continue running ads or not. Since you are not paying for each individual click, if one day there are 100 real visitors and 0 fake visitors and the next day there are 100 real visitors and 900 fake visitors, you still got the same amount of benefit from the ad you placed each day. With pay per click, you would truly be out 90% on your budget and see no return on your investment. Since most of us in the proxy industry are in the market of selling ads on our inventory, the metric for a successful ad campaign is how many repeat customers we get from our ads. Therefore, wether we got 100 real visitors and 900 fake, or 1000 real, on one particular day, only affects that day. The metric you *should* be looking at is how many return visitors your ad keeps bringing you, people who only clicked your ad once and keep coming back to view your site over and over every single day, those are the statistics that matter. And for those statistics, there is no other paid form of advertising I have found more effective than proxy.org. I have found however, there other methods of advertising that are more effective than proxy.org paid listings. These methods in fact cost nothing, but they take my time, don't always work, and can only reach a limited audience. Plus, there are only so many places like that to advertise. I use a combination of paid and unpaid ads to get my traffic. For paid ads, proxy.org is my best bet. Adwords comes in a close second, but given the transparency of the company and the programs they run, I no longer run adwords ads to promote my proxies.
First, the problem with your entire post is that you are willing to accept any amount of fake traffic. then you compound your fuzzy logic by asserting that the butcher is responsible for the quality of the meat he sells but the baker not the bread. Second, Google has never told me, you or anyone else how much that they will pay for a click. Proxy.org, on the other hand has made assertions to the amount of traffic that each ad spot will bring. Advertisers are to assume that if they say ad spot A has brought X number of visits over Y period of time then a comparable ad will produce relatively the same number of visits +/- an acceptable variance. We are also led to believe that this traffic will be legitimate. When a business has been notified that their product is defective and they continue to advertise it as genuine they are committing fraud. If not under the legal definition then certainly under the moral definition. Now, to address your concerns about how I made the determination to invest over $2,000 in proxy.org ads... On March 4, 2007, I purchased 3 of the bold ($20) listings and sent that traffic to 3 separate domains with a PHProxy script and Google Adsense blocks. I tracked the ROI on a daily basis and kept averages. After 3 weeks of tracking I determined that the ROI was sufficient to warrant a larger investment. I purchased several more $20 listing and approximately $1600 in Top Ten and Tier Two listings. When a few of the Tier Two listings were published I noticed a very strange variation in the CTR and the ROI. I suspected that there was something "not quite right" with the traffic. I sent my concerns to the owner of proxy.org and he rebuffed them saying that there was nothing wrong and that he did not know about any reason for the anomalous numbers that I was receiving. I trusted him. After all, I had sent him the money and he was in a place of authority in my eyes and at that time. Shortly after this communication I received email from Google stating that I had been terminated for invalid clicks. I then contacted the owner of proxy.org and asked for his input. Again he said that there was nothing wrong with the traffic and suggested that my account was terminated for a TOS violation not related to his traffic. I then began my communication with Google which I have reported ad nauseum on this site. I think that there is an obvious problem with the traffic resulting from ads placed on proxy.org. Google thinks that there is a problem with traffic resulting from ads on proxy.org. The owner of proxy.org has been informed of this numerous times, yet he will take your money RIGHT THIS SECOND for ads that he knows will produce fake traffic. Everyone has to decide whether to root for the good guys or the bad guys... who do you pick?