title: Why these two APIs(twitter geo/search APIs) return different result sets?
body: <p>I am fetching tweets from a specific region, but i am getting very different result sets. First method by giving longitude and latitude within a given radius. These are the longitude and latitude within city (Lahore,PK) and draw 5km radius. 5km is a very small portion of this city. By this i fetched around 60,000 tweets of a single day.</p>
  <h1>Method1</h1>
  <pre><code>import tweepy
  consumer_key= 'xxxxxxxxxxxxxx'
  consumer_secret= 'xxxxxxxxxxxxx'
  access_token='xxxxxxxxxxxxxxx'
  access_token_secret='xxxxxxxxxxxxxxxxxxxx'
  api = tweepy.API(auth,wait_on_rate_limit = Truewait_on_rate_limit_notify= True)
  public_tweets = tweepy.Cursor(api.search, count=100, geocode=&quot;31.578871,74.305184,5km&quot;,since=&quot;2018-06-09&quot;,show_user = True,tweet_mode=&quot;extended&quot;).items()
  for tweet in public_tweets:
      print(tweet.full_text)
  </code></pre>
  <p>Second Method, i used twitter geo search api, by querying Lahore, granularity=&quot;city&quot;. Now i am fetching tweets of whole city. but now i am getting 1200 tweets only of one day. I also fetched from past 7 days and get only 15,000 tweets. This is a very big difference that whole city is only giving me 1200 tweets and small portion of the same city is giving me more than 60,000 tweets. I also print the place id to verify that i am getting accurate polygons. These are the polygons (
  74.4493870, 31.4512220
  74.4493870, 31.6124170
  74.2675860, 31.6124170
  74.2675860, 31.4512220) and i draw these on <a href="https://www.keene.edu/" rel="nofollow noreferrer">https://www.keene.edu/</a> to verify. and yes these are accurate polygons of Lahore city.</p>
  <h1>Method2</h1>
  <pre><code>import tweepy
  consumer_key= 'xxxxxxxxxxxxxx'
  consumer_secret= 'xxxxxxxxxxxxx'
  access_token='xxxxxxxxxxxxxxx'
  access_token_secret='xxxxxxxxxxxxxxxxxxxx'
  api = tweepy.API(auth,wait_on_rate_limit = Truewait_on_rate_limit_notify= True)
  
  places = api.geo_search(query=&quot;Lahore&quot;, granularity=&quot;city&quot;)
  
  for place in places:    
      print(&quot;placeid:%s&quot; % place)
  public_tweets = tweepy.Cursor(api.search, count=100,q=&quot;place:%s&quot; % place.id,since=&quot;2018-06-09&quot;,show_user = True,tweet_mode=&quot;extended&quot;).items()
  for tweet in public_tweets:
      print(tweet.full_text)
  </code></pre>
  <p>Now first tell me why there is huge difference in result. I am using standard Api version.</p>
  <p>Second, tell me How these (api)s fetch tweets. because less then 1% tweets are geo-tagged and also not every user on there profile give exact city and country. Some users mention like Mars and Earth etc. So How these api work to fetch tweets in a specific region. either searching in a radius or by querying city/country. I studied twitter api docs and tweepy docs to study how these api work in background to collect tweets of specific region, but I do not found any helpful material.</p>