Category Archives: Application Kiosk Design

7 Tips for Selling Custom Kiosk Software

Thanks to Andrew Savala of Red Swimmer for this article on Custom Kiosk Software originally published on LinkedIn.  One key takeaway for me is getting the in-house IT people onboard and feeling ownership.  That usually gets talked about in terms of employee reactions to self-service but in the development phase usually it is IT which wants to justify itself.


7 Tips for Selling Custom Kiosk Software


CEO / Owner of RedSwimmer Inc. Specializing In Kiosk Software Development

7 Tips for Selling Custom Kiosk Software

Selling custom software can be tricky in any industry and finding the right clients to build a long-term relationship with is always a challenge.

Custom software is typically expensive due to the lack of reuse (by definition, its custom) and potential clients often have a hard time grasping why their complex solution, with no off-the-shelf alternative, is so expensive.

When you deal with the self-service kiosk industry you add the complexities of integrating your kiosk software with kiosk hardware (payment devices, biometrics, etc…).

My goal for this article is to share some valuable insights on the process of selling custom kiosk software.  Craig Keefner @craigkeefner of Kiosk Industry was kind enough to collaborate with me on this article and together we came up with the following list.

Vet prospective clients by establishing their budget upfront

The easiest way to vet potential clients is to start talking dollar figures early in the sales process and see how they react.

Before throwing out any dollar figures make sure to invest the time to talk with them and really understand their requirements and goals for their project.  This can often be completed in an hour or less and will help you get a very broad idea of the project cost.

Once you have an idea what they’re wanting try to scare them a little bit by throwing out some large figures.  For example, “A custom kiosk application like you’re describing will probably run you somewhere in the neighborhood of $40,000 to $80,000 in software development costs.  Do these numbers scare you?”

The last person I asked this to laughed and admitted they had a total budget of around a thousand dollars (including hardware).

No amount of salesmanship on my part would have made this sale possible and the customer appreciated that I didn’t waste their time.

On a final note, if they ask you to be an investor, run!  This translates to “I have no budget and I want you to do the work for free.”

The greater the uncertainty, the broader the price range

When estimating the cost of a custom project there will always be some amount of uncertainty.

For example, the client wants to integrate their kiosk software with a piece of hardware which you’ve never worked with.  Sure you can review the SDK, but you still have no experience with this device so you’re just guessing.

This is why we do range estimates as opposed to fixed point estimates.  The greater the uncertainty the broader the range should be.  A great book on this subject is Steve McConnell’s Software Estimation: Demystifying the Black Art.

The customer needs to have some skin in the game early

By requiring the customer to make a significant payment early in the design process it forces them to get some skin in the game and ensures that they are serious about the project.

It’s easy to spend days or even weeks designing a solution for free only to find out that the customer lacks the funding to launch the project.

Take the time to understand the customer’s requirements and then create a broad range estimate.  Then require a 30% down payment before designing the project in great detail.

Once the project is well defined you can come up with a fixed cost, if you like, or just make the range narrower as uncertainty is reduced.

Reliability isn’t always worth the cost

This sounds funny but reliability is costly and it’s not always worth the investment, particularly when the project is a one-off proof of concept.

If the project is for an ongoing business that’s a different matter, but many times the customer just wants a prototype they can show investors to raise money or show their boss to gain support for the project.

If this is the case then with the client’s blessing you can shoot for “good enough” and get to market quicker with the understanding that rework will be necessary for scalability and robustness.

Distract the developers

Let me start by saying that I’m a developer and no disrespect is intended.

If the client has in-house developers you may find yourself stepping on some toes by creating software their developers feel they could create internally.  Never mind that they’ve never created a single line of code designed to run on a kiosk and they’re completely slammed with other projects.

Try to involve their developers in the project so they feel a sense of personal ownership by giving them little parts (distractions) to do.

If they can make some minor changes to the project they’ll feel a sense of ownership and defend the project as if it was their own.

When possible allow the customer to own the code

Don’t give aware your super-secret framework or anything but as much as possible allow the client to own the source code and IP.  They’ll appreciate that.

Invest in long-term relationships

There are some relationships that are worth investing in and that often requires biting the bullet by giving away your time for free on the front-end.

This is particularly true when dealing with larger potential clients.  I’m not talking about becoming an investor in some longshot project I’m referring to investing in a relationship that will bring you sales for years to come.

Hopefully the tips in this article will save you from making some of the same mistake that we have.

Please also checkout my article on How to Choose the Right Kiosk Clients – 22 Useful Vetting Questions.

Subscribe to our blog updates today to keep up to date on our latest content.

Custom Development for Kiosks

Do you need custom development for your kiosk project?

As you begin you kiosk project, you may wonder if you need custom development.  Here are a few questions that will help you determine how “custom” your project is, and what level of custom development might be needed.

You will first want to identify the purpose and function of your kiosk.  If your kiosk is intended to provide users with access to an existing website or application, your project likely may not need custom development!  You will want to use kiosk system software in order to lock down your device, but you can configure that software out of the box to secure a website or application. Out of the box kiosk software can provide high levels of customization or can be deployed with only minimal changes – it is completely up to you.

If your kiosk will require interaction with an input device (you want users to submit payment, for example), you can still make this happen without custom development.  Either identify the external device options you would like to incorporate (make, model, specifications etc), and match that up with the kiosk system software which supports one of the devices on your list.  If you can’t find your device on the supported device list, you will want to reach out to the kiosk system software company to see if the device can be added. KioWare, for instance, adds devices primarily based on customer request and many devices are already supported via existing APIs.   Still, no custom development work is required.  If your timing is tight, and you need your device integration escalated,  payment may be required, depending on the organization with which you are working.

Tips for when you might need custom development for your kiosk project

So when do you need custom development for your kiosk?  You might (definitely) need custom development when you . . .  customdevelopment

If you are using an existing website or application but want the information to populate or integrate with a non existent or unrelated database, you might need custom development.  

If you want  fancy attract screens or custom start pages, toolbars, or keyboards, but do not have the development or design resources to create them, you might need custom development.

If your project exists only in your head, and you do not have an existing website or application, you might need custom development.

If you are integrating complex hardware in a manner that has previously not been seen, you might need custom development.

Example custom development kiosk project

Still not sure what a custom developed kiosk project might look like? Here’s one developed by the KioWare Custom Dev team:   Water World Self Service Locker Payment Kiosk

Requesting a quote for a custom kiosk development project

Ready to get started, but not sure what information you should pull together before calling for quotes?  Here is a link to (PDF) questionnaire to assist you with any calls you might make to get an accurate and consistent custom development quote.




5 Kiosk Design Tips for Creating Massively Scalable Kiosk Applications

Kiosk Design Applications for Scalability
Kiosk Design Applications for Scalability

Kiosk Design Tips :  Blog article on designing kiosk application to scale.  Creating a kiosk application capable of scaling from a handful of kiosks at a single location, up to thousands of kiosks spread across multiple regions requires that you design for scalability from day one.



1. Offload computation to the kiosk to reduce the workload on the server

2. Choose the right database engine based on the nature of your data

3. Use a reliable content delivery network with geo-location to rapidly deliver content

4. Ensure maintainability through modular design and loosely coupled layers
5. Regularly analyze your code to ensure it’s running efficiently

Security kiosk – Olea Anti-Malware Security Kiosk


Cyber security has been at the forefront of the news with major security breaches impacting some of the largest companies in the United States, including JP Morgan Chase, Staples, eBay, Home Depot and more[1].

In addition to traditional online methods of transferring viruses and malware, hackers have now begun to use portable media, such as USB “jump drives,” as a way to infiltrate secure networks.  In 2012, two U.S. power plants were infected by viruses that gained access to the highly secure networks through the use of USB sticks[2].

As a result, it is more important than ever to not only secure the computers and devices that have constant access to a network, but also ensure that any portable media has been thoroughly screened for viruses and malware.

Olea Kiosks has partnered with OPSWAT to provide a highlysecure anti-virus and anti-malware kiosk solution that will run OPSWAT’s Metascan software on portable media to prevent virus attacks that are perpetrated through portable media.

The California Kiosk is the latest kiosk model launched by Olea Kiosks, an award-winning kiosk manufacturer.  The California is a sleek unit with a small footprint that makes it a versatile interactive kiosk solution for any deployment.  The California comes with a universal device reader on the front panel for quick and easy scanning of any portable media, such as a USB drive or a DVD.  The internal components are easily accessed through the front panel, but in order to ensure that the highest security protections are maintained, the entire unit comes outfitted with highly secure locks to deter unintended access.  In addition, the kiosk is fully ADA compliant, so it is a great solution for government agencies.

Like Olea’s California Kiosk, OPSWAT’s Metadefender software is a cutting edge cyber security solution.  Metadefender utilizes OPSWAT’s Metascan security software to detect and prevent both known and unknown security risks based on a complex set of APIs.  Any possibly malicious file is flagged and quarantined to prevent any further access.  Metadefender is easily configured through a web-based interface to allow for multiple security rules based on varying security privileges and access levels within an organization.

The industry leading technology of the Metadefender software and the Olea California kiosk combine to provide a best-in-class cyber security anti-malware solution.  This cyber security kiosk can be deployed both connected to a network or in an offline/air-gap environment.

Contact Olea Kiosks today to find out how Olea’s anti-malware security kiosks can enhance the security of your network.




Kiosk Software – KioWare announces Europe & UK presence.

 KioWare Kiosk Software for Android and Windows Now Has UK Office

Reading, United Kingdom March 16, 2015 – Analytical Design Solutions Inc. (ADSI) dba KioWare, headquartered in York, Pennsylvania, has a new office location based just outside of London offering sales and service for current and prospective EMEA clients.

Kioware Kruper in London
Jim Kruper in London checking out the local communication facilities and quite possibly intergalatic travel.

Joining the KioWare team & managing the KioWare Europe branch is long time kiosk industry leader & Netshift founder, Nigel Seed.  According to Seed, “KioWare’s expanding reach provides a local presence for EMEA clients interested in KioWare’s reliable & simple lockdown solution.  Of particular value is KioWare’s Android lockdown product line in the face of the growing market for customer facing Android tablets.”

KioWare President Jim Kruper believes, “with the addition of Nigel Seed & Sascha Markham, and the new Reading UK location, KioWare gains regional expertise and a dedicated local presence, highlighting our commitment to supporting KioWare’s valued EMEA clients.”

More Information

All KioWare products are available as a free trial with nag screen here.  Existing clients have the ability to upgrade here.  KioWare has been providing OS, desktop, and browser lockdown security for the kiosk and self-service industry since 2001.

About KioWare:
KioWare kiosk software secures your application or website on Windows or Android devices, restricting user access to approved behaviors and protecting user and network data.  KioWare is fully customizable and offers solutions ranging from browser lockdown to full server-based kiosk management.  From simple out of the box configurations to more complex integrations, KioWare is trusted by developers, IT professionals, marketers, Fortune 100 corporations, and small business owners. The KioWare team is based in York, Pennsylvania, with an office located in Reading, UK.  Choose the best KioWare product for your self-service project and download a fully functioning free trial at

Laura Miller
KioWare Kiosk Software
Analytical Design Solutions, Inc.
+1 717 843-4790 x220

Google Buys Rights to .App Top-Level Domain for $25M

Google wants it so Google gets it. From PCMag.


Google prevailed in ICANN’s public auction for the top-level domain, paying just a hair over $25M for the rights to .app. It’s reportedly the highest purchase price yet paid for a top-level domain in an ICANN auction. It was more more than triple the price of the previous record-holder, Dot Tech LLC and its $6.8 million winning bid this past September for the rights to .tech.

“The mission of the proposed gTLD, .app, is to provide a dedicated domain space for application developers. The term ‘app’ is associated with a wide variety of applications, including mobile applications, web- and browser-based applications, cloud-hosted applications and even desktop applications,” reads the top-level domain application from Charleston Road Registry, Google’s registry services company.

KioWare – Windows and Android Kiosk with Kiosk Remote Monitoring feature on Kiosk Industry

KioWare Analytical Design Solutions Inc. (ADSI), the parent company of KioWare, has been in business since 1991 providing client/server database and web development consulting services. The maturin…


Kioware feature article on kiosk industry.  Along with full Windows versions, Kioware has 3rd gen Android clients with remote monitoring and alerts. Feature support such as ChromeCast.

Photo Tour – Sears 2015 Interactive In-Store Displays

Sears 2015 Interactive In-Store Displays

Last week I took a walking tour of the local Sears.  My tour was thru appliances and the main crux was to look at all the tablet information stations mounted on the appliances. The tablets are 7 inch Android designed and manufactured by CTS (Connected Technology Solutions).  Sears has installed around 10,000 of these units. This weekend I’ll stop by the merchandise pickup.

[pwaplusphp album=2015Sears]

More Information Links

Japan’s MUJI Department Stores Installing NCR’s New Concept for Self-Checkout – NCR

NCR, the global leader in consumer transaction technologies, announced today that the NCR SelfServ 90 will be deployed by Ryohin Keikaku Co, Ltd. in Japan.


This is the latest unit that NCR debuted at NRF 2015. Here is link for brochure

NRF Wrap: Microsoft, NCR new self-service kiosk tech

NRF Highlights

Here are the items we saw and read related to NRF 2015.

ZDNet wrap —

At the National Retail Federation trade show, tech vendors are displaying a mix of self-service devices designed to drive higher sales and create repeat shoppers.


NCR, Wincor, Microsoft, CKE Restaurants, Intel, TGI Fridays, Oracle, Dell, Beef-O-Bradys, Hardee’s, Carl Jr, Panasonic are the companies noted.

Microsoft video on Carl Jr and CKE


KIOSK Information Systems —  

LOUISVILLE, Colo.–(BUSINESS WIRE)–KIOSK Information Systems (KIOSK) will feature MoneyGram’s new money transfer and electronic payment kiosk solution at NRF’s 2015 Big Show (Booth #4235). The MGiAlloy™ self-service platform transforms delivery efficiency for MoneyGram’s retail agents and enhances consumer access to alternative financial services. Picture of unit


Cisco showing ShelfX technology in its booth at NRF
Cisco showing ShelfX technology in its booth at NRF


Nice channel view from Edgell covering printers, POS, Elotouch and more.

There was an animated buzz to the show floor this year. There were more people at every turn, in every aisle, in every booth, at every table, in every section of the Jacob Javits Center – 32,000 attendees to be precise – the largest crowd in the history of the show according to the NRF. That doesn’t surprise me. There were times when I couldn’t get around the hordes of people striding casually in the aisles when I had thirty seconds to get to my next appointment. Weaving in and out of the crowds was challenging, but it also added to the energy of it all.

I had the opportunity to visit the following booths: Verifone, Elo Touch Solutions, Balance Innovations, Star Micronics, Epson America, Zebra Technologies, Retail Pro, Microsoft, Vantiv, StopLift Checkout Vision Systems, and Seiko Instruments. I looked for channel insights. I asked how they support channel partners. I focused on channel-friendly products and solutions. I feel like I just scratched the surface of the show with my meetings, but I could only get in so much. So, here are the best things I saw and heard during my visits. I hope it proves valuable to you, the solution provider.

Xpedient Partners to Provide Self-Serve Kiosk Solutions to QuickChek C-Store Foodservice Operation

LOUISVILLE, KY–(Marketwired – January 08, 2015) – Xpedient, a wholly owned subsidiary of Advanced Solutions, Inc., has partnered with QuickChek to provide self-serve kiosk software to their entire convenience store foodservice operation.A market leader in food services, QuickChek is a New Jersey-based convenience store chain, operating 137 retail locations throughout…


KIOSK Information Systems MoneyGram Financial Services at 2015 NRF Big Show

KIOSK will feature MoneyGram’s new self-service money transfer and electronic payment kiosk solution at NRF’s 2015 Big Show (booth 4235).


Corrections kiosk application case study – Jail Visitation

The Meherrin River Regional Jail allows guests to schedule visits with inmates via the Renovo Scheduling App locked down with KioWare Kiosk System Software for Windows.


Case Study by Kioware on corrections visitation software lockdown of Renovo out of Minnesota (recently purchased by GTL)

Application Kiosk Design – Responsive Kiosk Interface part 2

How to Design a Responsive Kiosk User Interface – Part 2

database_designDeveloping a kiosk user interface that’s both responsive and a pleasure to use is a critical component of any successful kiosk project.  In this second part of my two-part series on developing a responsive kiosk user interface, we’ll focus on design considerations at the system level.  Follow these tips to ensure that your kiosk user interface is quick to react to your customers’ touch.

Kiosk performance can degrade over time

Just because your kiosk performed well when it was first installed doesn’t mean it’s performing well today. Following deployment, there are a number of factors that may change and impact your kiosk. Today there may be more users, more data, more software installed on the kiosk, bandwidth changes, memory leaks, disk fragmentation, etc…

Enter robust QA and maintenance schedules. It is important to periodically exercise production kiosks so that you can observe and remedy any declines in performance. Users will not always notify the kiosk operator of sluggish performance. In many cases, they just won’t use a disagreeable kiosk and opt for a cashier instead. It’s up to the kiosk operator to periodically test their kiosks in order to ensure responsive performance long after the kiosk is first installed.

Regular database maintenance

If your kiosk application makes use of a database then you should take steps to ensure that your database is regularly maintained or performance at the kiosk will suffer. In order for your database to function at an optimal level, its indexes must be in good working order. Database indexes get fragmented as database access occurs so your database will required regular maintenance, especially if it’s processing a heavy load. As a general rule you should rebuild your indexes when fragmentation exceeds 30% and below that you can you can simply defragment them.

Minimize real-time communication with external servers

Sometimes your kiosk application will need to push or pull information from a 3rd party server or API for any number of reasons (i.e. synchronizing inventory, processing payments, etc…). If the reliability or responsiveness of the 3rd party server is questionable, you’ll want to avoid risking your kiosk application’s responsiveness while waiting for a server outside of your control.   Real-time communication should be avoided when possible in favor of caching and bulk transfers.

For example, many of the kiosk applications we’ve developed are POS front-ends for a retail system running on a central server administrated by a 3rd party. All of the inventory and product photos are stored on the central server and need to be downloaded to the kiosks in order for customers to shop. In order to ensure responsiveness at our kiosks, we only communicate with the server in real-time when the data is operationally time sensitive. The majority of our server exchanges involve synchronizing inventory and product photos, which we perform on its own periodic thread.   We’re not stalling the UI thread with lengthy data-sync methods nor do we decommission the kiosk while it performs inventory maintenance as customers roam the store. When a transaction is completed at the kiosk, this does need to be sent back to the server in real-time in order to fulfil the order.

Consider minimizing large data transfers and long running processes during moments where the user would have to wait (i.e. when the user clicks next, don’t transfer 500k of data over the network before the next screen can load). We always try to minimize the number of real-time interactions between our kiosk and server to reduce the chance that the customer will be staring at a loading animation on the kiosk while the kiosk is waiting for the server to respond.

Make use of local servers and storage whenever possible

When reliability and responsiveness are of high priority you’ll want to take advantage of local servers and storage whenever possible.  The more points the data has to pass-through between your kiosk and its final destination the longer the transfer will take, which may result in the customer staring at a loading animation on the kiosk.  A great way to make use of local storage at the kiosk is to caching transient data in memory or store it in a local database.  This way you avoid unnecessarily accessing a central server.

Build a solid domain model to support the kiosk system (doesn’t utilize data intensive operations, model small and operations are quick)


Constructing a responsive kiosk user interface also involves design considerations at the kiosk level which was the topic of my first article in this two-part series.  If you develop kiosk user interfaces then checkout my complementary article about� creating a touch friendly kiosk user interface design.  If you have any other suggestions for designing a responsive kiosk user interface please post them in the comments section below.

Application Kiosk Design – Responsive Kiosk Interface Part 1

How to Design a Responsive Kiosk User Interface – Part 1

decoration_windows_tablet_chassisA responsive kiosk user interface is a crucial component of developing a kiosk application that’s a pleasure for your customers to use.  If your kiosk’s user interface appears sluggish, you can expect your customers will opt for interacting with a cashier, which defeats the purpose of having a self-service kiosk.  This is a multi-faceted topic that includes design considerations at both the kiosk and system level.  For this reason I’ll be breaking this article up into a 2-part series, the first of which will cover design considerations at the kiosk level.

The illusion of responsiveness matters

Sometimes delays are inevitable and the user will have to wait while your kiosk application performs some necessary background processing.  In this case you can still give the illusion of responsiveness by displaying an animation indicating that the kiosk is processing their request (i.e. a spinner or progress bar).  In too many cases the kiosk’s user interface will freeze while some background process is going on which is disconcerting to the user.  The video below illustrates this point when the user presses the BACK button and the kiosk application hangs and then switches screens a couple seconds later.

Your kiosk should utilize responsive hardware and a sufficient internet connection

If your kiosk is running overly outdated hardware or the internet connection is slow it’s unlikely that your kiosk application will perform as intended.  This is why it’s important to test your kiosk application onsite and ensure that it performs adequately.  Making use of local storage can reduce the need to synchronize data with offsite servers, thereby lowering bandwidth requirements, which can also help offset a slower internet connection.

Run parallel processes in the background with threading

Modern processors support launching multiple processes to accomplish tasks in parallel, thereby allowing your kiosk application to perform work in the background.  In .NET this is often referred to as worker threads because they work in the background without significantly slowing the user interface.  You can utilize worker threads in your kiosk application to ensure that your kiosk’s user interface is always responsive.  Examples of tasks you might perform with worker threads include caching data, calling 3rd party web services, or interacting with peripheral hardware.

Utilize local storage for caching transient data

Data which only needs to be stored temporarily and is then discarded is referred to as transient data.  An example of transient data in a bill pay kiosk application might be a list of customers with outstanding water bills.  Customers would use the kiosk to search for and pay their water bill, but once the bill is paid the kiosk application no longer needs to include the customer’s once outstanding bill in its searchable list. Transient data will ideally be stored in memory for quick retrieval, but a local database will also suffice if the data is too large to store it all in memory.

Use a splash screen for preliminary processing

When your kiosk application is first run or a new user session begins you can create a splash screen where the kiosk application has a chance to preform any preliminary caching or processing.  This preliminary processing avoids performing these operations while the user is actually trying to interact with the kiosk and ensures that the user interface stays responsive.  During this splash screen the user might see a popup window with a message stating that their session is being prepared and some animation indicating that the kiosk application is loading like a progress bar or spinner.

Use vector scalable graphics

Vector graphics use mathematical calculations to represent graphical images and are infinitely scalable, although there are some limits to how small they can scale.  Vector graphics also require a smaller memory footprint, especially for larger resolution images, and allow you to easily scale to larger screen sizes while maintaining performance.

If you’re developing your kiosk application in HTML5 consider these optimizations

If you’re using HTML5 to develop your kiosk application then consider taking advantage of the new touch features in HTML5.  You’ll also want to preload the entire application including all html templates, data models and scripts so the app isn’t wasting the user’s time doing requests mid-usersession. A good example of this is using client-side MVVM frameworks.

Hardware accelerated elements like the canvas utilizes the machines resources like GPU and VRAM. When doing animations or graphic intensive logic, using these will be much more responsive than using regular HTML/JS and even Flash.

Web sockets: Instead of polling the server for updates, have the server reach out to the client for necessary server->client communication. For example your transaction was finished processing. The server can then initiate the connection to the client to notify the client of the result. This is a more responsive approach to polling the server or having a request waiting open for a response.


Part 2 of this 2-part series will cover design considerations at the system level in order to ensure your kiosk user interface stays responsive.  This will include topics like utilizing 3rd party services, building a solid domain model and synchronizing data. Also, if you develop kiosk user interfaces then checkout my complementary article about� creating a touch friendly kiosk user interface design.

Kiosk Manufacturer