From a quick browse around your website, the tracking script is collecting the correct data for me. The cookie is also being set correctly, so I don’t see any accidental issues here.
The things I can think of:
– Siteground determines unique visitors by IP address, so every household or company will only be counted as a single visitor. Someone visiting your website from a laptop or phone will be counted as a single visitor. Another person using the same internet connection will not show up as an additional visitor, because the IP Address is the same as the earlier visitor.
– Koko Analytics counts visitors by their device (since cookies are stored on the device), so it will always show more visitors than Siteground will. Someone visiting the website on their laptop and then on their mobile phone will be counted as 2 separate visitors.
– Another thing that might affect the discrepancy is that the Koko Analytics cookie is only valid for 6 hours after the last activity. So if someone visits your website in the morning, does not come back (using the same device) for at least 6 hours and then visits your website again in the event, Koko will show this as 2 visitors.
I agree that it’s a huge difference though, but I think it can be explained by looking at the different methods used to come to the number. The important part is that the data itself is consistent relative to itself, so that you can use it to base decisions off and determine what is working and what is not.
Does that help and clarify things a bit?