I use gimp to make mine.
Snapchat geofilters are not based on your phone. They are GEOfilters, set in certain GEOgraphic locations. Like cities, towns, schools, plazas, etc.. When you upload your filter to
Snapchat's website, you are brought to a map page, where you draw the outline of where you want your geofilter to be used. For instance, Chicopee MA. When I uploaded my file, I selected around the boarder of Chicopee. I had to have google maps next to it so I could draw the outline properly.

If you go to their website, they have the dimensions, file type, and how large the file can be. They also have a template you can download to you can properly set the filter up to fit.
EDIT; Once you submit your filter, you will have to wait until they email you back. The email will either say "congratulations, your filter will be added as soon as possible, or it will say "your filter has been unaccepted." They won't tell you why not, but it most likely means it isn't the best quality.
If you have any questions feel free to ask some more.