How Amazon Flex Block Grabber Scripts Works
Ever since Amazon Flex started, there have been automated methods to get Amazon Flex Blocks. When Amazon Flex first started, it was just crude auto-tapping programs that ran on rooted Android phones. This method worked because you were assigned only one warehouse and you could blindly tap for blocks. This method still works, but Amazon Flex drivers need to be more careful since they have combined both Prime Now and Logistic blocks together. You may automatically pick up a Prime Now or Logistics block without ever knowing which one it is. There are still a few ways to blindly accept blocks, but it requires getting one or two blocks to begin with. Below is a post I wrote about Amazon Flex Blocks:
For the past two years or so, there are auto-tappers that do not require rooting Android phones. They can mimic human fingers but are still a fraction of the speed as a well ran script and doesn’t have the customization of these auto-grabbing scripts.
This post is just merely for information and will explain generally how they work. No specifics of the script will be given since it seems to change every month or two and by the time you read this post, the exactly method will have changed. Amazon “tries” to change the system so that scripts don’t necessarily work for long periods of time, but they don’t seem to try hard enough to keep these scripts from getting blocks. Many people have made easy suggestions to keep scripts from getting blocks (like limiting refresh rates to some reasonable number, instead of fractions of a second).
How Amazon Flex Block Grabber Scripts Works
(Note that this is how many apps works. How do you think ride requests are sent to the Uber driver app?)
The Block Grabber script is a simple script (Python or shell) that runs on a computer. For initial prototyping, you can use your own personal computer. For a “production” server, the server should be extremely close to the Amazon Flex Blocks server, which is in an instance of AWS in DC somewhere. The script logs into your Amazon Flex account, sends a command to check for blocks (the same as your refresh button on your app), decodes the block information, decides which ones to accept, then accept the specific block. All of this can occur within a few tenths of a second. In some warehouses, this process can be too long so additional scripting needs to be done in order to minimize computations and delays to beat out other scripts. Getting blocks in these warehouses can be impossible unless there are more blocks than scripts or that blocks come out last minute, preventing drivers that are not close by to accept them.
The Amazon Flex login information is not just a simple username and password. It is a digital key that is stored on your phone. You will need to set up your phone so that the internet is routed through a proxy server (your production server). The proxy server can then listen to the login command and capture the digital key. It can then be used by your script to log in. While your phone is linked to the proxy server, you can also check for blocks. The proxy server can output this information and show you what is being sent by your phone (refresh blocks) and what is sent by the Amazon Flex server (block information). Some people check this information daily to ensure that no changes are made. If your program responds with information formatted in an old way, Amazon could pick that up and detect that you are using a script.
All scripts are caught because of how often they check and how many times they check. There is no way around it. You run your script slower and you risk other scripts beating you. If you run too fast, you reach that upper limit and you can’t refresh for another few hours. There is an upper limit of how many times you can check the server in a given period of time, so scripts are often right at the limit. When I used to tap for blocks, I had a rough idea of when blocks came out, so I only tapped during those times. Some programs probably work in this manner and run only for a short period of time, but faster than other scripts that are programmed to run 24 hours a day (or most of the day).
Once your server has received the block information, you can choose to only work at certain warehouses, certain length blocks, type of block (restaurant, prime now, etc) and also at certain times (10am, 12pm, etc). The more parameters you choose to sort by, the slower your script is so you will have to decide how you want to sort. I believe some accept anything at a given warehouse so theirs can run faster. With the 8 hour daily cap and/or a 24/40 hour weekly cap, I would accept any block. Back when there wasn’t a daily limit, you wouldn’t be able to do all 14 hours (8am to midnight) if you had certain gaps within your day.
How Well Does it Work?
When programmed correctly, they work very well. They could get any block you wanted in most warehouses. In some warehouses, competition is fierce among different scripts so even if you had a script, it could be difficult to get blocks.
How Can You Get a Script to Work for You?
There are multiple companies out there that sell their services to Amazon Flex workers. I wont name them here, but SERIOUSLY DON’T DO IT. There is no guarantee that you will stay 100% invisible since its too easy to detect script use at the server level. You often have to pay $50-$100 a week to get blocks and often have to give up your password to the Amazon Flex account. If you are at this decision point about Amazon Flex, find something else better to do.
How Does Amazon Limit Block Grabber Scripts?
Their only method at this time is to set a limit on refresh rate and how many times an entity can refresh in a given period of time. This is obviously not enough since there are still many people who are using scripts to get blocks day in and day out.
What Are The Risks of Using a Script?
There is always the risk of getting caught by Amazon. Amazon typically sends a few warnings before they “soft block” your account. Everyone who uses a script gets the warning email. I know a few people who had their accounts deactivated due to excessive use of these scripts, but most people cannot see any blocks for a week to a few weeks. Amazon will never tell you that you are “soft blocked” but you won’t be able to see blocks in your area while others can.
Unfortunately, there are some people who have multiple accounts (LLC, etc) so they can rotate through different names and accounts until their other account gets reactivated.
How Can I Tell Scripts are Being Used in my Warehouse?
If you cannot see blocks at the warehouse you like for the past few weeks, few months, or the last year, most likely there are scripts running at that warehouse. The tell-tale sign that scripts are being used is if you try to accept a block, it says “Sorry Blocks Has been Taken.” There could be someone else who tapped faster than you, but if it happens repeatedly, it can suggest that scripts are being used at your warehouse.
What Can Be Done About Scripts?
There are so many people who have already complained to Amazon years ago and I am sure Amazon is aware of the issue. It is so prevalent in many warehouses that I can comfortably say that everyone is competing with a script at every warehouse. I believe that scripts in Logistics warehouse tends to be less common because there are no tips with packages, but almost all Prime Now warehouse has a few scripts running.
There is almost no way to compete with scripts in speed, but you can try to get blocks when people least want them, like on rainy/snowy days, or Friday nights/weekends. I used to work just Friday afternoon-night and then all weekend. Usually other Amazon Flex drivers already hit their 40 hours so Friday afternoon/nights and the weekend were much easier to get. If I got some blocks on Sunday, I could tap for Monday blocks and hope to get a few for the following week.
If you can’t get blocks at any time, then find something else better to do. People get so hung up on one company, but in this independent contractor market, you have the freedom to do something else. This isn’t a job. This is just part time temporary work. I can guarantee that you could find something better to do. I would recommend Lyft or Uber since I can bet that you can earn slightly more with Lyft and Uber if you figure in the time needed to tap for blocks and the time it takes to go to the warehouse and return home.
In Seattle, I averaged about $22 an hour with Amazon Flex (including tips, but without mileage expenses) and about $24 an hour with Lyft and Uber. I could do Lyft and Uber at anytime, but I used to spend at least an hour or two a day outside of my Amazon Flex shift tapping for blocks, so my actual income per hour was lower on Amazon Flex.Have more questions about Uber or Lyft? Head on over to our Rideshare Driver Training Course! Driver Promotions