At outdoor environment, GPS can provide accurate loca tion services. But at indoor environment, it can not. In order to realize accurate positioning indoor, we propose a fingerprint localization algorithm based on WiFi in this paper. In the process of our research, we will divide the indoor environment that need provide accurate location services into a certain scale of virtual grid, and tag each vertex with the physical coordinates. Then use multiple wireless router indoor as WIFI signal source, and use smart phones as the target node. Sample more groups of WiFi signal strength values from each grid vertex, then the value and the physical coordinates form a position fingerprint database. In the process of localization, mul tiple WiFi signal strength value detected by the target node will be matched with the position fingerprint data base to find out a grid vertex most closest to the target node, and regard the physical coordinates of the grid ver tex as the final location information of the target node. In order to improve the positioning accuracy of the algorithm, we put the WiFi signal received by the target node into a filter, and use the least square method for error correction when calculating coordinates of the target node. Lastly, we did an experiment on the specific scenes. The experi mental results show that the positioning error of fmger print positioning algorithm based on WiFi is under the meter level at indoor environment, and the positioning accuracy can better meet the needs of business location services.