The Most Active and Friendliest
Affiliate Marketing Community Online!

“Adavice”/  “1Win

Buying Traffic Zip Code -- US Traffic with an api

Graybeard

Well-Known Member
Just what the title says ...
50K to 200K CPM/day after some testing
other media too ...

I don't have 10 monkeys working for me to check little boxes:p
An API is a MUST!

Why? this is why...


mysql> SELECT COUNT(zipcode_nb) FROM zip_names ;
+-------------------+
| COUNT(zipcode_nb) |
+-------------------+
| 16161 |
+-------------------+
1 row in set (0.05 sec) Entire USPS (national)

mysql> SELECT COUNT(zipcode_nb), metro_area FROM zip_names WHERE countyName REGEXP 'los angeles';
+-------------------+--------------------------------+
| COUNT(zipcode_nb) | metro_area |
+-------------------+--------------------------------+
| 270 | Los Angeles-Long Beach-Anaheim |
+-------------------+--------------------------------+
mysql> SELECT COUNT(zipcode_nb), metro_area FROM zip_names WHERE countyName REGEXP 'suffolk|fairfax|new york';
+-------------------+-----------------------------+
| COUNT(zipcode_nb) | metro_area |
+-------------------+-----------------------------+
| 135 | New York-Newark-Jersey City |
+-------------------+-----------------------------+
1 row in set (0.05 sec)
mysql> SELECT COUNT(zipcode_nb), metro_area FROM zip_names WHERE state_iso REGEXP 'NJ' AND metro_area REGEXP 'York-Newark-Jersey';
+-------------------+-----------------------------+
| COUNT(zipcode_nb) | metro_area |
+-------------------+-----------------------------+
| 363 | New York-Newark-Jersey City |
+-------------------+-----------------------------+
1 row in set (0.02 sec)

mysql> SELECT COUNT(zipcode_nb), metro_area FROM zip_names WHERE metro_area REGEXP 'Houston';
+-------------------+----------------------------------+
| COUNT(zipcode_nb) | metro_area |
+-------------------+----------------------------------+
| 204 | Houston-The Woodlands-Sugar Land |
+-------------------+----------------------------------+
1 row in set (0.04 sec)


Sk__y__p3: barry_555_5
 
Last edited:
I can do my own api (coded in short time) correlating IP range to the zip codes I want.

So, if you can whitelist with YOUR DSP api (PUT/CRUD) JSON by CIDR IP range
2.3.4.0/24
4.5.6.0/23
etc ...

All ad types considered -- I am leaning toward native ads.
 
Last edited:
A month later and I have found a few -- I still am interested in advertising DSP's with a full api (PUT|POST|DELETE|GET)
I am going to have many pages with multiple ad placements
I need to buy whitelist IPs ONLY by CIDR see above my own api for ips is long finished.
mysql> select count(*) from zips.zip_ranks_ratios;
+----------+
| count(*) |
+----------+
| 34364 |
+----------+
^^^ that is how many starting pages i can have :eek:
 
hey @Graybeard and API IS A MUST _ totally agree, sorry but I might miss something- you are looking for a DSP that can whitelist or target ZIP codes? As you mention there's some of them perhaps, bucksense can help, we are doing the integration through API so I guess you can do it too. Also, did you try Appnexus? their API also looks pretty good
 
I'll look at those thanks
Whitelist by IP
You have some large or subtle variances (demographics) between census tracts, postal zip codes and IP radii.
A US census tract is a smaller area than a zip code and the census tracts are not continuous within a postal code.

Part of los angeles, ca
mysql> select zip ,tract from zip_tract_crosswalk where zip regexp '^9001'order by zip;
+-------+-------------+
| zip | tract |
+-------+-------------+
| 90010 | 06037212102 |
| 90010 | 06037211000 |
| 90010 | 06037212303 |
| 90010 | 06037211704 |
| 90010 | 06037212204 |
| 90010 | 06037211701 |
| 90010 | 06037212410 |
| 90010 | 06037212502 |
| 90010 | 06037211120 |
| 90010 | 06037212610 |
| 90010 | 06037211802 |
| 90010 | 06037212203 |
| 90010 | 06037212101 |
| 90010 | 06037212304 |
| 90010 | 06037212702 |
| 90011 | 06037224020 |
| 90011 | 06037228210 |
| 90011 | 06037228100 |
| 90011 | 06037228420 |
| 90011 | 06037228310 |
| 90011 | 06037229300 |
| 90011 | 06037227010 |
| 90011 | 06037226700 |
| 90011 | 06037228320 |
| 90011 | 06037532800 |
| 90011 | 06037226001 |
| 90011 | 06037228410 |
| 90011 | 06037229100 |
| 90011 | 06037226410 |
| 90011 | 06037228220 |
| 90011 | 06037228720 |
| 90011 | 06037228600 |
| 90011 | 06037226420 |
| 90011 | 06037228500 |
| 90011 | 06037228800 |
| 90011 | 06037229200 |
| 90011 | 06037229410 |
| 90011 | 06037231100 |
| 90011 | 06037224600 |
| 90011 | 06037228900 |
| 90011 | 06037227020 |
| 90011 | 06037532700 |
| 90011 | 06037228710 |
| 90011 | 06037229420 |
| 90011 | 06037239202 |
| 90012 | 06037206010 |
| 90012 | 06037207102 |
| 90012 | 06037197600 |
| 90012 | 06037980010 |
| 90012 | 06037207103 |
| 90012 | 06037206200 |
| 90012 | 06037207400 |
| 90012 | 06037207502 |
| 90012 | 06037206032 |
| 90012 | 06037197700 |
| 90012 | 06037206020 |
| 90012 | 06037207501 |
| 90012 | 06037208000 |
| 90012 | 06037207301 |
| 90012 | 06037207101 |
| 90012 | 06037206031 |
| 90012 | 06037207302 |
| 90013 | 06037207502 |
| 90013 | 06037206031 |
| 90013 | 06037207302 |
| 90013 | 06037206200 |
| 90013 | 06037207710 |
| 90013 | 06037207301 |
| 90013 | 06037206300 |
| 90014 | 06037226002 |
| 90014 | 06037206300 |
| 90014 | 06037207710 |
| 90014 | 06037207302 |
| 90014 | 06037207301 |
| 90015 | 06037209820 |
| 90015 | 06037209403 |
| 90015 | 06037224200 |
| 90015 | 06037226001 |
| 90015 | 06037210010 |
| 90015 | 06037226002 |
| 90015 | 06037209520 |
| 90015 | 06037224410 |
| 90015 | 06037224010 |
| 90015 | 06037224320 |
| 90015 | 06037209300 |
| 90015 | 06037207301 |
| 90015 | 06037207900 |
| 90015 | 06037207710 |
| 90015 | 06037224020 |
| 90015 | 06037224420 |
| 90016 | 06037220100 |
| 90016 | 06037270300 |
| 90016 | 06037218500 |
| 90016 | 06037219800 |
| 90016 | 06037218220 |
| 90016 | 06037703100 |
| 90016 | 06037218702 |
| 90016 | 06037218300 |
| 90016 | 06037219700 |
| 90016 | 06037219901 |
| 90016 | 06037219500 |
| 90016 | 06037219902 |
| 90016 | 06037219300 |
| 90016 | 06037270200 |
| 90016 | 06037236202 |
| 90016 | 06037702502 |
| 90016 | 06037218210 |
| 90016 | 06037236203 |
| 90016 | 06037220000 |
| 90016 | 06037218600 |
| 90016 | 06037218701 |
| 90016 | 06037218400 |
| 90016 | 06037236204 |
| 90016 | 06037702400 |
| 90016 | 06037236100 |
| 90016 | 06037236000 |
| 90016 | 06037234200 |
| 90017 | 06037208902 |
| 90017 | 06037208302 |
| 90017 | 06037209300 |
| 90017 | 06037207710 |
| 90017 | 06037208000 |
| 90017 | 06037209403 |
| 90017 | 06037209102 |
| 90017 | 06037209200 |
| 90017 | 06037208401 |
| 90017 | 06037208301 |
| 90017 | 06037209103 |
| 90017 | 06037208904 |
| 90017 | 06037209104 |
| 90018 | 06037219300 |
| 90018 | 06037218702 |
| 90018 | 06037222100 |
| 90018 | 06037218701 |
| 90018 | 06037218900 |
| 90018 | 06037219010 |
| 90018 | 06037234200 |
| 90018 | 06037221500 |
| 90018 | 06037219020 |
| 90018 | 06037222600 |
| 90018 | 06037221302 |
| 90018 | 06037234000 |
| 90018 | 06037222200 |
| 90018 | 06037222500 |
| 90018 | 06037218800 |
| 90018 | 06037231400 |
| 90018 | 06037222002 |
| 90018 | 06037222001 |
| 90018 | 06037218110 |
| 90018 | 06037231300 |
| 90018 | 06037218120 |
| 90018 | 06037221402 |
| 90018 | 06037221401 |
| 90018 | 06037221210 |
| 90019 | 06037216300 |
| 90019 | 06037212800 |
| 90019 | 06037218800 |
| 90019 | 06037218210 |
| 90019 | 06037221302 |
| 90019 | 06037212900 |
| 90019 | 06037221304 |
| 90019 | 06037212701 |
| 90019 | 06037217100 |
| 90019 | 06037218220 |
| 90019 | 06037221303 |
| 90019 | 06037270300 |
| 90019 | 06037216900 |
| 90019 | 06037212620 |
| 90019 | 06037213100 |
| 90019 | 06037217200 |
| 90019 | 06037216100 |
| 90019 | 06037216700 |
| 90019 | 06037218701 |
| 90019 | 06037216800 |
| 90019 | 06037212702 |
| 90019 | 06037218300 |
| 90019 | 06037218110 |
| 90019 | 06037216200 |
| 90019 | 06037218120 |
+-------+-------------+
179 rows in set (0.09 sec)
 
I can program my own software to connect with a DSP and buy from that network and the ad exchanges they use.
I am not interested in buying cross device tracking or 'affinity' calculating 'behavioral' analysis. I took a fast look at your suggestions ;) I can write my own code to use an api -- just have to find a few DSPs to work with. I can't buy big enough to deal direct with a few exchanges at once.(yet.)
 
hey @Graybeard and API IS A MUST _ totally agree, sorry but I might miss something- you are looking for a DSP that can whitelist or target ZIP codes? As you mention there's some of them perhaps, bucksense can help, we are doing the integration through API so I guess you can do it too. Also, did you try Appnexus? their API also looks pretty good
Hi there, do you know the requirements of Bucksense and AppNexus DSP? Do they require prepayment to start?
 
My work-around has become just buying the entire GEO
  1. then sorting it by zip code myself
  2. then sorting it by my own algorithm based on that zip code's;
  • relative 'financial strength'
  • time of day by location
  • any state or local criterion
3. then redirecting that sorted traffic to the desired URI page, or;
4. altering the target page's display dynamically to suit the visitor (traffic).

Some coding development of my own api required.
I guess no one is either competent or willing to deliver traffic this way around here. I can buy GEO fenced traffic of more accuracy, location wise, for $5 to $8 /1000; most of it will be in app mobile --so the conversion rates and amounts are not that hot --depending on the offer' affinity.

In other words: Do it yourself --or pay and arm and a leg :p as usual ...
 
Hi there, do you know the requirements of Bucksense and AppNexus DSP? Do they require prepayment to start?

Depends on the DSP they all require prepayment ( all I have inquired of).
Generally, $500 to $2,000 or so. The best ones want over $10,000 mo/volume.
 
MI
Back