We are currently recommending Google Custom Search Engine. It is free, the ads can be removed if you are a state government entity, and it works well.
Choose “Create a Custom Search Engine”
If your agency has a Google account, sign in.
If not, create an account. If possible, use an email address that another employee in your position could use, such as: email@example.com
Name example: Your Agency Search Engine
Description example: Ensuring safe agency topic and licensing agency topics in Idaho
Sites: agency.idaho.gov (If you have other domains, list those too. Example: subtopic.idaho.gov)
Choose the standard edition. (We will take ads off in a few more steps.)
The next step is called “Try it Out”.
We recommend the default or Minimalist style. (Espresso may be work nicely if you are using the Stanley palette.)
Use the test search with some keywords that are appropriate for your site.
The next page gives you code for your site. This code generates the search box. The results will appear below it.
You will want to paste this into a empty template for your site in the content area. Use a one-column page (unless you would like side navigation (two column) or some help-type links on the right (three column)).
Save this file as search.html in the same place as your homepage file (index.html). Change the h2 to say Search Our Site.
Add a line a code. (This will be inserted below the first line.) See link for the new addition.
Get the code.
A preference: I feel the page looks better with the search box width decreased. I decrease the width on the first line to 80%.
From the code page, click on the "Look and feel" link in the first sentence.
You are now in the Control Panel.
Choose "Business Account" and the second option, "Do not show ads on results pages."
If you have time, you may want to use the following also:
Promotions - "promote" a certain page as the best match for a particular query.
Synonyms - if other state's use another word for a key service you offer, match that word to the word used in your agency.
Autocompletions - this attempts to predict the user's query based on what they have typed so far.
To make the search live, you will need three things.