A number of hotels in Eugene do not offer shuttle service. In addition, the Eugene Airport does not have regular bus service to and from the downtown area. Omnishuttle is a great service that will pick you up and take you home anywhere in the Eugene/Springfield area. They also offer service to outlying areas like Albany, Corvallis, Roseburg and toward the Oregon Coast (Veneta, Elmira, etc.)
The service runs 24 hours a day, 7 days a week. It's preferred that you call 1 day ahead to make reservations. They are very accomodating, and have often been able to get me to where I need to go on the same day I call. The charge is $18 for one way (University area to airport.)
Make sure to plan for delays if you are catching a shuttle to the airport in early mornings. You may find that they have several stops to pick up passengers going out on different flights. Talk with your shuttle reservation agent to make sure you will arrive at the airport on time.
They take cash and credit cards, and have been known to set up direct billings for company accounts.