Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Preventing Repeat / Fraudulent Applications

  • marcgold
  • marcgold's Avatar Topic Author
  • Offline
  • Premium Member
  • Premium Member
More
1 year 6 months ago - 1 year 6 months ago #232789 by marcgold
Please help us help you and fill where relevant:
Your LimeSurvey version: Currently 3.28.30  (But currently evaluating V5)
Own server or LimeSurvey hosting: Own Server
Survey theme/template: Fruity 
==================
This is a hot subject at the moment within the research industry here in the UK,  where we have a fair number of people that are completing multiple application/surveys for multiple payments.
We have built some scripts that verify ip addresses, locations, vpn's  using the iPGeolocation service and this does help,  but would like to take things a little further and not sure how to implement this. 

We have some unique data within our panel (not an LS panel - it's external) that is parsed for every survey.  This data is a Unique ID for each registered person.  

I have a question at the end of every application that is only triggered if they are out of quota - done using Conditions.  
My thinking is to count the number of times an ID has been used (in total) across all responses and if it >=2 then trigger the Out of Quota Question.

The problem is this would require querying the DB Table directly,  which you can't do with standard LS, as far as I can tell conditions are related to that particular surveyID.  I'm assuming this could be done with JS or maybe as a Plugin but both are beyond my capabilities and would need to get this coded.

What does the forum think?  Is there anyway of simply doing something like this?

Looking forward to your thoughts.

Marc
Last edit: 1 year 6 months ago by marcgold.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 6 months ago #232801 by holch
I think what you need is token based surveys. With token based surveys you can send an individual link to each of your respondents in the panel. If "uses left" is set to one, once a token has been used (either because they completed the survey by making it to the end or by being screened out through a quota) this token can not be used anymore, thus each member of the panel can only fill the survey once.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

More
1 year 6 months ago #232806 by jelo

With token based surveys you can send an individual link to each of your respondents in the panel.
 
I don't see how that will help to tackle the issue of multiparticipation via different panels.
The idea to create a unique identifier from panel data to ensure unique participants is hard and cheating is still possible.

The case here is that a unique identifier is provided from external source and part of the response set.
And every new response needs to be checked against the existing responses.  If there the unique identifier is found more than once in the responses the survey should trigger a routine to preven t the completion of the survey.

If LimeSurvey 5 is possible, I would take a look at the statfunctions. The statCountIf function seem to be the way to go.
manual.limesurvey.org/StatFunctions

 

The meaning of the word "stable" for users
www.limesurvey.org/forum/development/117...ord-stable-for-users

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 6 months ago #232807 by Joffm
Isn't this similar to this?
[url] forums.limesurvey.org/forum/can-i-do-thi...as-already-filled-in [/url]
Count the entries in one question?

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • marcgold
  • marcgold's Avatar Topic Author
  • Offline
  • Premium Member
  • Premium Member
More
1 year 6 months ago #232817 by marcgold
Replied by marcgold on topic Preventing Repeat / Fraudulent Applications
Hey Thanks guys, this is really helpful.

Jelo is right the token based won't be effective for exactly the reasons mentioned, it was one of the first things i looked at.

Joffm> You hit the nail on the head, yes its almost exactly the same as forums.limesurvey.org/forum/can-i-do-thi...as-already-filled-in

There is a little more logic to the function, but I can handle that.

Is the Statcountif only available in LS5 or will I be able to use it in LS3.28

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 6 months ago #232828 by holch

I don't see how that will help to tackle the issue of multiparticipation via different panels.


Well, I must have understood the task wrong then.

I didn't read anything about multiple panels into this, as it is only talking about a UniqueID within their panel:

This is a hot subject at the moment within the research industry here in the UK, where we have a fair number of people that are completing multiple application/surveys for multiple payments.
We have built some scripts that verify ip addresses, locations, vpn's using the iPGeolocation service and this does help, but would like to take things a little further and not sure how to implement this.

We have some unique data within our panel (not an LS panel - it's external) that is parsed for every survey. This data is a Unique ID for each registered person.


So I assumed Marc is talking about how to avoid that a respondent starts a survey, get's screened out and starts it new trying to get around the screening criteria.

Of course, if this is about avoiding the same person participating in the same survey via different panels, then the tokens don't prevent anything.

We always try to stick to just one panel for each survey, just because of this.

Having a UniqueID only helps if this UniqueID has the same structure over several panels. Either an official ID for each citizen (e.g. Tax Number) or an ID that is based on several variables of the persons that can't be easily changed. But I guess both options wouldn't work because of data protection laws.

If the UniqueID only exists in their panel, I don't see how this is different to tokens then.

Wondering about how the panels have a unique ID over several panels in the UK.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • marcgold
  • marcgold's Avatar Topic Author
  • Offline
  • Premium Member
  • Premium Member
More
1 year 6 months ago #232832 by marcgold
Replied by marcgold on topic Preventing Repeat / Fraudulent Applications
Holch

You have a very good point. And yes they are separate panels but the UID is consistent across all panels. So participant registers at a central point which is where the UID is created and then is placed on 1 or more panel depending on criteria. Its probably easier to think of this as one panel though.

But is not the token system run within LS, How would I generate an anonymous survey that was token based, where the token is being provided by a 3rd party in the URL as a post variable?

I must be missing something.

Please Log in to join the conversation.

  • marcgold
  • marcgold's Avatar Topic Author
  • Offline
  • Premium Member
  • Premium Member
More
1 year 6 months ago #232835 by marcgold
Replied by marcgold on topic Preventing Repeat / Fraudulent Applications
Also, Need to add that the way we "Screen Out" - is by displaying a "Sorry you dont fit" message if a criteria is met, with some JS to disable the submit button - so the survey never ends.

In this instance, the survey would not be complete and the Used flag on the token wouldn't be set to 1.

How would we get round this?

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 6 months ago - 1 year 6 months ago #232837 by holch

How would we get round this?


By using "zero" quotas (a quota with the value of 0) to screen people out. In my opinion the cleanest way to do screenouts in Limesurvey, because as you said, if you do it the described way, the survey has not been closed/finished.

You can add a custom message for each screenout or you can use a custom end url and redirect your participants back to the panel so the screenout is registered in the panel.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Last edit: 1 year 6 months ago by holch.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 6 months ago #232838 by holch

But is not the token system run within LS, How would I generate an anonymous survey that was token based, where the token is being provided by a 3rd party in the URL as a post variable?


I am not really getting the system applied here, so it is difficult to give any good recommendations.

So participant registers at a central point which is where the UID is created and then is placed on 1 or more panel depending on criteria. Its probably easier to think of this as one panel though.


So what is it, one panel or several panels? I am confused. ;-)

Afaik, (Limesurvey) tokens can't be passed into a survey via a link, they must be created in the participant / token table. Either manually one by one, via upload of a CSV file or via API.

I assume you want to automate this as much as possible. So you probably would have to go down the API route. Actually, your unique ID could be the token. You could create a new participant in the participant table by using the uniqueID as the token (depends if the uniqueID can fit the LS requirements for tokens though).

But as long as I don't have a clear understanding of the process of this UniqueID, it is difficult to give better advice, it is all a little bit of guesswork.

I assume you have no influence on the creation of the UniqueID whatsoever, right? I assume this is a central organization that does this and gives the panels the respondents?

In your panel, besides the different socio demographic data of the participants you also save this UniqueID, correct? But you have access to this panel and could trigger an API call from there to Limesurvey, correct?

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 6 months ago #232839 by holch
If all these panels are under your control, it is probably easier to "clean" the invites before you send them out for duplicates of the UniqueID.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

More
1 year 6 months ago #232848 by jelo

Is the Statcountif only available in LS5 or will I be able to use it in LS3.28
 
You will need LS5. If you want to screenout when the is more than one occurrence, you will need to ensure that people don't start a survey two times. If that is the case, a legit respondent could trigger the screenout too. Cause the ID is saved in both surveys, but only one might be completed.
I think we might need an count routine for completed responses.



@holch: These magic technologies around identifying multipanel users are no longer in the news. The hype is over. The consolidation in the panel market might be one driver.
And professional fakers will get around most of these routines. They create complete alter egos.

RelevantID is a scoring system, which can be used in survey tools.
E.g. www.qualtrics.com/support/survey-platfor...etection/#RelevantID
 

The meaning of the word "stable" for users
www.limesurvey.org/forum/development/117...ord-stable-for-users

Please Log in to join the conversation.

Lime-years ahead

Online-surveys for every purse and purpose