I've developed a set of ArcToolbox Python scripts, which I've been using on certain projects for clients. The approach we've been taking is to have our clients pay us to run these tools, and provide data and a report at the end of the project.

This approach is working well so far, but has obvious limitations. I've been thinking that there could be advantages to distributing the tools - we'd be able to reach a wider market, and it could drive more consulting work. I think best way to do this might be to publish the toolbox to ArcServer and charge clients for access (via ArcMap), but I'm hardly familiar with ArcServer, so I wanted to get clarification on some things.

  • Is it actually legal to charge users for access to ArcServer geoprocessing services via ArcMap? I don't see how this would be different than charging for access to a web map with geoprocessing functions, but I wouldn't want to violate ESRI's terms of service.
  • When a Python script is published on ArcGIS Server, can ArcMap clients view the code, or is it hidden? If we publish this set of tools at all, I don't want users to be able to view or copy the code.
  • Is this even a good idea?

Original post on ArcGIS forums: http://forums.arcgis.com/threads/62752-Geoprocessing-Service-General-Questions

1 Answer 1


I'll try and address each of your questions in turn:

Hosting services for clients, is it legal?

You are going to need to speak to your Esri account manager about your specific use case to understand if this is something you could do under normal terms. However, we were looking at doing something similar in terms of hosting web mapping sites for clients using ArcGIS Server. We were told, by Esri (UK), that in order to be able to do this we needed a specific agreement which was considerably more expensive and ultimately not viable based on our cost model. So, the short answer is probably, with the right agreement. However, the right agreement may not be viable - it depends on you business model.

Can a published Python script be viewed?

I don't believe your clients will be able to view the published script as what you are exposing to them is the GP Service to be executed. They should only see the interface necessary to enter the service parameters in order to execute the process.

Is this a good idea?

In principle I would say that it is, however you should consider the following points when making your decision:

  • Is your business model viable when you know the cost of a commercial hosting licence from Esri?
  • How big are the datasets involved? If your clients are waiting long times for the process to run then they may form a negative view of your service, if its online then most people have an expectation of quick response times
  • Consider the wider impact on your business, could you get a better margin on your current model?
  • Consider your motivation. Are you doing this because your clients are demanding it? Do you have competition and by doing this do you gain a competitive advantage? Are you doing it because you feel it is the right thing to do?

Perhaps you could sign up to the Esri EDN and then run a pilot project with one of your clients?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.