`EX1005
`
`
`
`US012051083B2
`
`a2) United States Patent
`US 12,051,083 B2
`0) Patent No.:
`Waishampayanetal.
`
`(45) Date of Patent: *Jul. 30, 2024
`
`(54)
`
`(71)
`
`(72)
`
`LOCATION DETERMINATION USING
`ANONYMOUS BROWSER DATA
`
`Applicant: FullThrottle Technologies, LLC, West
`Chester, PA (US)
`
`Inventors: Amol Waishampayan,Philadelphia, PA
`(US); Pat O’Flaherty, Dublin (IE);
`Alexey Yakovlev, Dnipro (UA); Louis
`David DiGiacomo, Plymouth Meeting,
`PA (US)
`
`(52) U.S. Cl.
`CPC ....... G06Q 30/0205 (2013.01); GO6F 16/955
`(2019.01); HO4L 63/0421 (2013.01); HO4L
`67/52 (2022.05)
`
`(58) Field of Classification Search
`CPC vieccecsscssesseeserctenscntsenseeceonees G06Q 10/00—50/00
`(Continued)
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`Assignee: FULLTHROTTLE
`(73)
`1/2015 Silver et al.
`8,935,797 Bl
`2005/0261962 Al=11/2005 Chuah
`TECHNOLOGIES, LLC, West
`Chester, PA (US)
`
`(Continued)
`
`(*)
`
`Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`This patent is subject to a terminal dis-
`claimer.
`
`(21)
`
`Appl. No.: 18/210,987
`
`(22)
`
`Filed:
`
`Jun. 16, 2023
`
`(65)
`
`(63)
`
`Prior Publication Data
`
`US 2023/0325861 Al
`
`Oct. 12, 2023
`
`Related U.S. Application Data
`
`Continuation of application No. 18/210,317, filed on
`Jun. 15, 2023, which is a continuation of application
`(Continued)
`
`(51)
`
`Int. Cl.
`
`G06Q 30/00
`GO06F 16/00
`
`(2023.01)
`(2019.01)
`(Continued)
`
`Primary Examiner — Mustafa Iqbal
`(74) Attorney, Agent, or Firm — Flaster Greenberg P.C.
`
`(57)
`
`ABSTRACT
`
`Systems, methods, and apparatus are described herein for
`determining a location from anonymousdata. For example,
`a computing device may receive anonymousdata associated
`with a browsersession initialized by a user via a browser on
`a user computing device. The computing device may deter-
`mine that the user has not been assigned a unique identifier.
`The computing device may determine whether the user
`opted-in to location tracking. If the user opted-out of loca-
`tion tracking, the computing device may determinea latitude
`coordinate and a longitude coordinate of the user computing
`device during the browser session. The computing device
`may identify a physical address for the user based on the
`latitude coordinate and the longitude coordinate,
`for
`example, using a map application programming interface
`(API). The computing device may assign the unique iden-
`tifier to the user. The computing device may associate the
`unique identifier to the physical address.
`
`20 Claims, 16 Drawing Sheets
`
`
`
`104
`| Communication
`Device
`
`|
`/
`
`}
`|
`
`110
`
`
`
` |
`
`Processor
`
`
`
`|
`
`Launch Labs EX1005 Page 1
`
`Launch Labs EX1005 Page 1
`
`
`
`US 12,051,083 B2
` Page 2
`
`Related U.S. Application Data
`
`(56)
`
`References Cited
`
`No. 17/984,418, filed on Nov. 10, 2022, now Pat. No.
`11,823,219, which is a continuation of application
`No. 17/687,992, filed on Mar. 7, 2022, now Pat. No.
`11,556,947.
`
`(60) Provisional application No. 63/208,275, filed on Jun.
`8, 2021.
`
`(51)
`
`Int. Cl.
`GO6F 16/955
`vee en04
`FOAL 67/00
`HOAL 67/52
`‘
`
`er
`
`(2019.01)
`eae
`(2022.01)
`(2022.01)
`(2022.01)
`
`705/734
`
`(8) mee Classification Search
`
`U.S. PATENT DOCUMENTS
`
`2010/0094727 Al
`2010/0212716 Al
`2012/0240151 Al
`2013/0151645 Al
`2014/0143655 Al
`2014/0350830 Al
`2016/0180376 AL*®
`
`*
`
`2017/0064032 Al
`2019/0199774 Al
`2020/0065736 Al*
`2020/0219337 Al
`2020/0233911 Al
`2020/0372556 Al
`2020/0386565 Al
`
`2022/0138700 Al
`
`4/2010 Shapiro
`8/2010 Lerneret al.
`9/2012 Tapper
`6/2013 Siliski et al.
`S214 AMM vsrserernrrscrin ey
`11/2014 David
`6/2016 LU veces G06Q 30/0244
`705/14.43
`
`3/2017 Ulrich etal.
`6/2019 Demseyetal.
`2/2020 Relangi ......cccses. GO6N 20/20
`7/2020 Kwak
`7/2020. Sirokeretal.
`11/2020 Watts et al.
`12/2020 Rao etal.
`
`5/2022 Oehleret al.
`
`See application file for complete search history.
`
`* cited by examiner
`
`Launch Labs EX1005 Page 2
`
`Launch Labs EX1005 Page 2
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 1 of 16
`
`US 12,051,083 B2
`
` rr|a||snagindyno|Zh|nee|i||SadinaqyNndu||OW|Locman||soINeq
`
`||Kioway)||Or
`|a
` f|
`
`UONEDIUNWIWOD
`
`POL
`
`\
`
`Launch Labs EX1005 Page 3
`
`Launch Labs EX1005 Page 3
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 2 of 16
`
`US 12,051,083 B2
`
`
`
`gainedBuyndwos|90ineqBugndwos
`
`
`
`ao1aaqBuyndwo9
`
`Lo
`
`pe
`
`
`
`“~~907
`
`
`
`
`
`as
`
`|ae
`aoineqBuyndwoy
`
`
`GOESore
`
`CcOld
`
`Launch Labs EX1005 Page 4
`
`Launch Labs EX1005 Page 4
`
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 3 of 16
`
`US 12,051,083 B2
`
`we 300
`
`xz
`
`Naweeeneeneengeeeeeneene”
`
`“
`foo
`304
`_; Receive data associated |
`with a browser session
`accessing a URL
`Lecceeneeneeeneenenceenceenenenneneneenenel
`
`fo
`306
`| Determinelocation data |
`'
`associated withthe
`browser session
`
`a
`a P Determine a physical
`308
`_ addressfor the browser !
`session using the location:
`data
`
`310
`Sc
`
`;
`cenesteseetentesteeneeneeseePcceceeceeceeceeneen
`—eens
`
`Identify subsequent
`return visits to the URL
`from the browser
`
`;
`
`312 ™
`cy
`
`~
`}
`End
`VKJ
`
`FIG. 3
`
`Launch Labs EX1005 Page 5
`
`Launch Labs EX1005 Page 5
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 4 of 16
`
`US 12,051,083 B2
`
`
`
`“~*~ Receive data from
`404
`browsersession
`
`++Determinethatthere is
`406
`no unique identifier
`associated with the
`browser session
`
`oo
`408
`
`Determine location data
`for the browser session
`
`
`410
`Ve
`
`|
`Generate unique
`| identifier for the browser
`
`
`
`412_
`
`~~Associate the unique
`|
`identifier with the
`
`
`| determinedlocation data
`
`414-—~
`woo\
`(
`End
`NS7
`
`}
`
`Launch Labs EX1005 Page 6
`
`Launch Labs EX1005 Page 6
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 5 of 16
`
`US 12,051,083 B2
`
`00g“
`
`SOA~paubisseqlanbun?nymeai~aLSL“oO
`giasmoiqoyvéaN,.paubbua
`906U7ONOA“|so™i“"
`a!OG
`
`UOISSESJESMOlG|———
`
`YMpayeosseyeigoe
`
`
`ByepeniadayNsZ0S
`
`qjen
`
`18
`
`SMOJQ0}sbiunubissy
`
`
`7%ébupoei,
`oN.a‘,a~,
`|S8A
`
` “~~uones07NSONON0}uj-}dCJasy“~YL—pid
`aos
`
`“ywOTS
`
`vIS—h
`|yOyokedjeoo]:UL|enbiun
`
`aoys|
`7is
`
`
`
`Ul814009||e}SU|
`
`
`
`anbiunayelossy
`
`PSYRUSP!O}(|
`
`ssauppe
`
`G‘Old
`
`ejepsod
`
`;
`soypuedewBulsn
`
`ssoippeAyquap|
`
` pue|OTs.SPMve]oulUUe}eq-7
`Joapnybuo]
`
`
`
`Bunesadoaoinap
`
`Jesmouq
`
`Jasmoiq
`
`JOSMOJg
`
`Launch Labs EX1005 Page 7
`
`Launch Labs EX1005 Page 7
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 6 of 16
`
`US 12,051,083 B2
`
`\ Start ? 602
`
`'
`
`a—_~ 600
`
`f
`re
`
`Identify location
`associated with user from:
`anonymous data
`
`
`
`co
`606
`| Generate confidence
`rating for the user
`
`608
`
`_ Sendnotificationsto
`‘identified users based on |
`|
`the confidence rating
`|
`
`Update confidencerating !
`upon subsequent URL |
`visits
`
`612 “
`
`|
`
`flo~
`End
`}
`a
`
`\
`
`FIG. 6
`
`Launch Labs EX1005 Page 8
`
`Launch Labs EX1005 Page 8
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 7 of 16
`
`US 12,051,083 B2
`
`
`
` Buneyaed|ONIEUOAA
`
`if
`
`ny
`
`
`
`
`
` |yokeobedli\\|payewlsy
`
`Z°9ls
`
`
`
`AJO}SIHBOIAIES
`
`CTL
`
`Launch Labs EX1005 Page 9
`
`Launch Labs EX1005 Page 9
`
`
`
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 8 of 16
`
`US 12,051,083 B2
`
`eo at
`f
`/ee
`
`800
`
`
`
`rcrrrereseccccccccceecctnny _.
`(Start)
`er 802
`
`7804
`poeBonenA
`:
`i
`|
`Receive vehicle
`:
`information
`:
`eeceneceeneeeneentneemencenmenenenceenenenees
`
`v7 806
`pocrenennforme A808
`2
`:
`a
`"OS Yes
`| Determine vehicle
`“ Age > THace?
`_—
`age/mileage
`NN
`x
`i
`i
`—Ananagaaatncnauananenanneneatasesenesnennecced
`
`_
`
`— a
`SO
`No
`
`a
`
`ON 810
`cofBM 812
`oS
`|
`|
`oO.
`|
`~\Yes
`| Generate default
`| No LOPrior service NN No oO
`i;
`wes
`“
`;
`Swi" Mileage > THe?
`=9=~“3———
`: service information
`“information? = — 9
`mene
`i
`a
`a
`ON
`-
`|
`Pocecenectctsnenel
`i
`
`SN
`
`on
`NU
`
`Ss “
`“A
`i Yes
`
`818 --..
`
`+
`Lat prensa| score/ max health 4
`
`|
`limit
`ekwenneeenna:sveneenneeenenennannny
`Identify last
`service/miles since
`service
`
`iv 816
`“Set default health
`
`a
`
`anennngeenacuusuuceusnnnnnneacaneneenvewennan! a820
`;
`i
`|
`—----—~ee Determine health
`|
`score
`|
`822—a
`( End}
`Se
`A
`
`FIG. 8
`
`Launch Labs EX1005 Page 10
`
`Launch Labs EX1005 Page 10
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 9 of 16
`
`US 12,051,083 B2
`
`a”
`eeStat 902
`sonnete.
`
`TN
`
`,yo
`
`é
`
`900
`
`J
`
`Identify location
`904|associated with user from)
`anonymousdata
`nT)
`
`ans
`906
`_ Generate health score for:
`vehicles
`
`onsh,
`fo
`908
`Send notifications to
`|
`identified users below :
`_ predefined health score |
`
`
`
`910 |aas
`
`Perform service of
`vehicle
`
`fioe~\
`(
`End
`}
`NX.
`a
`
`Launch Labs EX1005 Page 11
`
`Launch Labs EX1005 Page 11
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 10 of 16
`
`US 12,051,083 B2
`
`____1000
`
`Receive campaign level
`data associated with a
`
`campaign
`
`aoe
`
`Identify a session
`associated with a ZIP
`“> code covered bythe
`1006
`campaign
`ceventeeeeenenceeeepo
`ww
`1008 7 XN
`a Was the ~S.
`7 sessioninitiated by ~.
`“search engine or
`“\. address bar .~”
`~N
`“
`N.
`“a
`
`SUS
`: Yes
`
`“Determine a probability
`that the session was
`initiated in response to
`watching/listening to
`media associated with
`
`the campaign
`
`Launch Labs EX1005 Page 12
`
`Launch Labs EX1005 Page 12
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 11 of 16
`
`US 12,051,083 B2
`
`i
`
`Determine a probability
`that the session was
`initiated in response to
`watching/listening to
`media associated with
`
`the campaign
`
`~“MO
`
`
`1106
`
`}
`Identify a session within a
`Receive campaign level
`household associated
`data associated with a
`with a ZIP code covered
`
`campaign
`by the campaign
`
`
`
`
`1108 7N
`“
`N.
`~S.
`a Was the
`
`
`_-~
`sessioninitiated by “.. No
`Yes
`
`“\ search engine or _-~
`~N.,
`a
`\. address bar
`™~.
`7
`™“.
`“o
` M42yt —
`
`| Determine whether the |
`;
`;
`i household is associated ~-—-p
`fo
`;
`i with any other sessions |
`
`Determine whetherthe
`household performed a
`;
`transaction associated
`;
`;
`with the campaign
`
`1116 —~
`,a~,
`i
`End
`
`FIG. 11
`
`Launch Labs EX1005 Page 13
`
`Launch Labs EX1005 Page 13
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 12 of 16
`
`US 12,051,083 B2
`
`
`
`
`
`
`pooeulmatePumasuolssasdui!ubledwedSUI}OY}YIMpayeioosse|—asPa|JouoqodoudeAjquap|suoissesdulubledwied|
`ONaowubveduseoNsa,S1PSULUMpaleloosse|SEMUOISSASdy}AepJo
`SSSMST|ayouoqiodoudeAyguep]
`wo.ioOaaeniu“¢poued~~peren
`
`
`;*-9TZT
`
` moyYLeatentanannnnannannnnnannnnananannenannnatnthannnannnnannitaseatSP__OTT2021pret payeniul
`
` sypyeyAepjoowyie|Bpuesjep&SUILS}Eq|
`
`semuolsses
`2ulyjIMuoIssaseAjquap
`
`P9J9A098pOdIZeUII
`
`payeioossepjoyesnoy
`
`uBiedwieoay}Aq
`
`—(a}@YMpayeioosseejep
`Jang]uBledwiedanieoay|
`
`
`
`ubiedweo
`
`evnnevntvinnnerneebeamed
`
`clOld
`
`Ayiqeqoudeeulwwayeq|
`
`
`
`SEMUOISSASOU}JEU
`
`0}ssuodsaiulpayeniul
`
`0}Buus}si/6uiyoyen
`
`
`
`YIMpayeioosseeipaw
`
`
`
`uBledwiedou}
`
`Launch Labs EX1005 Page 14
`
`Launch Labs EX1005 Page 14
`
`
`
`
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 13 of 16
`
`US 12,051,083 B2
`
`1304
`
`Receive campaignlevel
`data associated with a
`
`campaign
`
`1306
`
`Identify a household
`within a target zoneof
`the campaign
`
`1312--~
`—Porn
`Determine a probability
`that the session was
`|
`initiated inresponse to _ Yes
`watching/listening to
`|
`media associated with
`the campaign
`cesseseeeseseeeseeeeeeeeyceccessseseseseesessesssssseed
`1314
`fo
`(
`‘
`
`End
`
`“sy
`}
`A
`
`~~
`“household
`Oa
`. ae N
`initiate asession within “.NOwa
`“<a predefined time of media.
`x
`~\associated with the.~
`|
`campaign?
`ee
`NY
`Yes
`
`|
`em,
`1310 a NS
`” Wasthe “\.
`.~* sessioninitiatedby“\. No|
`“search engine or —“oO
`‘address bar~~
`NU
`a
`
`FIG. 13
`
`Launch Labs EX1005 Page 15
`
`Launch Labs EX1005 Page 15
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 14 of 16
`
`US 12,051,083 B2
`
`1400
`
`&
`
`| 1406—,
`+
`Identifya household
`
`C)
`
`within a target zoneof
`the campaign
`|e
`
`data associated with a
`campaign
`ccecnnntntnnnnntnneenntnnenne
`
`oO
`(Start) 1402
`|
`1404 | Receive campaign level
`
`7
`
`yo eee
`;
`
`1412 ™
` Tatarmineanenhability
`( Determine a probability
`that the session was
`initiated in response to |
`__
`| watching/listening to
`| media associated with
`|
`the campaign
`
`Determine whether the
`household is associated +
`with any other sessions
`
`1408 “x
`“° Didthe<
`|
`household =
`Yo
`“\_ No
`_’”
` initiateaasession within
`x
`“Na predefined time of media
`‘associated with the .-~
`“campaign?~~
`“
`oD
`SN L
`Yes
`1410 ~ON,
`NS
`A
`~~.
`wu” Wasthe
`Yes _-~ session initiated by “No
`“\ search engine or
`NN,
`.
`\_address bar
`NN
`“
`
`feewnewntaleewnenenanamanmiataamaaaMammaamareaAeA
`
`Determine whether the
`household performed a
`transaction associated
`with the campaign
`
`
`
`Launch Labs EX1005 Page 16
`
`Launch Labs EX1005 Page 16
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 15 of 16
`
`US 12,051,083 B2
`
`00ST~~“SAaccaNA
`
`
`
`ON“x9P09dIZeUIyIM"SoA\.paubissegyenbuunZYUMP7S_/
`
`
`4NN,ssouppeS|a“SNYOEYEPSAIBIOYavemuemnmmeemereeeeeens
`
`woo~COAGBBNgalaeCTTSnesUIAPOHEIOOSSE—eg)
`“oN90SToNa"80517qubredweaor~||4~oO~|UOISSasJaSMOg
`
`fosvo“OUa!OSTZOST~
`YeJOSMOIQO}dianbiun
`oNa
`
`
`
`ubissy;
`
`
`
`U7seqssauppe
`
`
`
`
`
`Jes).oa.-:awSO.yoeas7eae,_‘on“SAGpavemuvoissasuoweooy.aJOSMOuqseM,oSA0}uj-3do
`Olena’108uiBua
`vesteeNOPID
`
`
`
`
`
`
` anbiuna0js$P4009|feysUIfL{vist~ZISt~
`
`0}Buiuaysi/Buiyoyem0}
`
`
`
`
`
`JASMO!GBU}JU}asuodselulpayeqiulsemEE|UOISSASJasmoug|AyjigeqoudeaulwuejaqJoayged
`
`
`
`1290)4apooatesuulQ|
`payeloosseeIpew—OCSTNooneSTubledwesayy—bend’Ul
`
`
`aoinep|:peynuep!0}GIaaJojpuedewBursn0apnuBuolpue
`
`
`anbiunayelossy||sseuppeAjquap|40@pnyBuo|Pue
`SSoIppe|BepteysodBuyesedo
`
`
`Poepnyqe]SuIWi9}9q
`
`
`
`GT‘Old
`
`||JOSMOlq|
`
`Launch Labs EX1005 Page 17
`
`Launch Labs EX1005 Page 17
`
`
`
`
`U.S. Patent
`
`Jul. 30, 2024
`
`Sheet 16 of 16
`
`US 12,051,083 B2
`
`
`
`
`
`ayyoud
`
`GunesaouapyuodJesnajepdn
`
`aJ219U95)
`
`JOSMOqvena-9C9T7909T“MocrnrenccaneranccccsnnnncnnccnnennnconareenactiSO09T_SSeuppePeynUspl|wo“UOISSES
`
`
`
`
`
`ubissy|—a?3“Ton
`J9SNau}0}ny‘oSi™sa
`Ce:vcoTq|anbiun
`_/beens_CITNUo09T“
`
`
`
`anlageKOT.4Jasn@9}2J9U9¢)|NNooepownedvO9Ton9t>ea“+
`aouapyuoo|oe/guyuopaseq“Nw
`
`pl9T~~Z19T—SaQ|Gunes
`
`mmmBEITON\.OLUFIdQJes7NSZoa__PID
`
`SUONEDYROU}2J9Ud5)|UoCUPPRALOS4uones07Ss
`
`
`0}UOYmSULUa}OG40SY9eO|E90||ulq|anbiun
`puedlenblunalnLJESMOIqO}SS4ffexenceeenccnneeyimPOJCIDOSSC—herrenecenmenetfoyes‘5ay}Buisnajyoud|.".poubisseqienbun,Bien
`
`
`
`
`———anbiunayelossysseuppeAjquap|Oe
`‘iLrer\~'.
`suoneoynou;5
`aypuesJOSMOdJasMolg
`
`
`(9MY,apnyge|Sulue}eq
`
`.\0z91\-etat ®gtot
`
`paynuapto}q]Jo/puedewBuisnoapnuBuolpue
`isseippee}ep|e\sodBuyeradoaonap
`
`
`
`
`
`Lnenenninniesinnennn
`
`\.O€9T
`
`a10js|UH94009TIES
`
`OT“Old
`
`Launch Labs EX1005 Page 18
`
`JOSMOJQ0}|4
`
`NU"OTST
`
`Launch Labs EX1005 Page 18
`
`
`
`
`
`
`US 12,051,083 B2
`
`1
`LOCATION DETERMINATION USING
`ANONYMOUS BROWSER DATA
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application is a continuation of U.S. Non-Provisional
`application Ser. No. 18/210,317, filed Jun. 15, 2023, which
`is a continuation of U.S. Non-Provisional application Ser.
`No. 17/984,418, filed Nov. 10, 2022, which is a continuation
`of U.S. Non-Provisional application Ser. No. 17/687,992,
`filed Mar. 7, 2022, now issued as U.S. Pat. No. 11,556,947
`on Jan. 17, 2023, which claimspriority to U.S. Provisional
`Patent App. No. 63/208,275, filed Jun. 8, 2021, the disclo-
`sures of which are hereby incorporated by reference herein
`in their respective entireties.
`
`BACKGROUND
`
`Various businesses market products using websites. Each
`product may have a dedicated webpage that is accessible
`from the business’s website. Consumers access the specific
`webpages for more information regarding the specific prod-
`ucts offered by the business entity. In an example,
`the
`business maybe a car dealership (e.g., a car dealer). The car
`dealer may operate specific webpages for specific vehicles.
`Potential customers access the specific webpages for more
`information regarding the specific vehicles. The car dealer
`may be interested in understanding how many times a
`potential customer visits specific vehicle webpages via the
`dealer website. The car dealer may also be interested in
`learning more information about the potential customer.
`for
`Car dealers also usually offer vehicle services,
`example, such as maintenance services, corrective services,
`and collision services. Car owners or operators can choose
`to have their car serviced by the car dealer with whom they
`purchasedtheir car, another local car dealer, a service shop,
`and/or the like. The car owners or operators may access a car
`dealer’s service website for more information regarding the
`services available.
`
`SUMMARY
`
`Systems, methods, and apparatus are described herein for
`determining a location from anonymousdata. For example,
`a computing device may receive anonymousdata associated
`with a browsersession initialized by a user via a browser on
`a user computing device. The computing device may deter-
`mine that the user has not been assigned a unique identifier.
`The computing device may determine whether the user
`opted-in to location tracking. If the user opted-out of loca-
`tion tracking, the computing device may determinea latitude
`coordinate and a longitude coordinate of the user computing
`device during the browser session. The computing device
`may identify a physical address for the user based on the
`latitude coordinate and the longitude coordinate,
`for
`example, using a map application programming interface
`(API). The computing device may assign the unique iden-
`tifier to the user. The computing device may associate the
`unique identifier to the physical address. The computing
`device may determine one or more of an address type, a
`nameof the user, an age of the user, a gender of the user,
`demographics associated with the user, and/or psychograph-
`ics associated with the user. The computing device may
`determine a confidence rating for the user based on a
`frequency of visits to a specific URL, the physical address,
`demographics associated with the user, and/or psychograph-
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`55
`
`60
`
`65
`
`2
`ics associated with the user. The confidence rating may be an
`indication of the user’s interest in a product. The confidence
`rating may be determined using an algorithm (e.g., a learn-
`ing algorithm).
`Systems, methods, and apparatus are described herein for
`determining a vehicle health score. A computing device may
`receive information associated with a vehicle. The comput-
`ing device may determine a vehicle age and/or a vehicle
`mileage based on the received vehicle information. The
`computing device may determine whetherthe vehicle age is
`greater than a threshold age. The computing device may
`determine whether the vehicle mileage is greater than a
`threshold mileage. The computing device may identify prior
`service information for the vehicle. The computing device
`may determine a health score for the vehicle based on the
`vehicle age,
`the vehicle mileage, and the prior service
`information for the vehicle. The prior service information
`may include a last service date and/or a number of miles
`driven since the last service date. The health score may be
`determined using an algorithm (e.g., a learning algorithm).
`The computing device may be configured to send a notifi-
`cation to an operator of the vehicle based on the determined
`health score. The notification may include a service
`reminder or a service coupon when the determined health
`score is less than or equal to a predefined health threshold.
`The notification may include a marketing offer when the
`determined health score is greater than a predefined health
`threshold.
`Systems, methods, and apparatus are described herein for
`determining a probability that a browsing session wasini-
`tiated in response to watching and/or listening to media
`associated with a campaign. A computing device may
`receive data associated with a campaign. The data associated
`with the campaign may indicate a first set of impression
`proportions on a plurality of dates and a second set of
`impression proportions during a plurality of dayparts. The
`plurality of dates may include the dates within a time period
`of the campaign. The computing device may identify a
`browsing session that visited a specific URL. The browsing
`session may be associated with an address that is within a
`zone covered by the campaign. The computing device may
`determine a date and a time of day that the browsing session
`visited the specific URL. The computing device may deter-
`minethat the date is within a time period associated with the
`campaign. The computing device may identify a first
`impression proportion ofthe first set of impression propor-
`tions that is associated with the determineddate. Thefirst set
`of impression proportions may include respective impres-
`sion proportions of campaign impressions for each of the
`plurality of dates. A campaign impression may include an
`instance of media associated with the campaign being
`watched and/or listened to. The computing device may
`identify a second impression proportion of the secondset of
`impression proportions that is associated with the time of
`day. The second set of impression proportions comprises
`respective impression proportions of campaign impressions
`for each ofthe plurality of dayparts. Each of the plurality of
`dayparts may include a portion of a day. The computing
`device may determine a probability that the browsing ses-
`sion wasinitiated in response to a user watching orlistening
`to media associated with the campaign. The computing
`device may determine whether the user performed a trans-
`action associated with the campaign. The computing device
`may determine whether the browsing session was initiated
`by a direct search or an organic search.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 illustrates a block diagram of an example com-
`puting device.
`
`Launch Labs EX1005 Page 19
`
`Launch Labs EX1005 Page 19
`
`
`
`US 12,051,083 B2
`
`3
`FIG. 2 illustrates a block diagram of an example com-
`puting network system.
`FIG.3 is a flow diagram illustrating an example method
`that may be implementedto identify a physical address of a
`user based on anonymousdata.
`FIG.4 is a flow diagram illustrating an example method
`for associating a unique identifier with location data from a
`browser session.
`
`FIG. 5 is a flow diagram illustrating an example method
`for associating a unique identifier with a physical address of
`a user.
`
`FIG.6 is a flow diagram illustrating an example method
`for determining a user’s interest in a product.
`FIG.7 is an example graphical user interface for a vehicle
`health assessment.
`
`FIG.8 is a flow diagram illustrating an example method
`for determining a health score associated with a vehicle.
`FIG. 9 is a flow diagram illustrating an example method
`for updating a health score associated with a vehicle.
`FIG. 10 is a flow diagram illustrating an example method
`for determining a probability that a browsing session was
`initiated in response to watching and/or listening to media
`associated with a campaign.
`FIG. 11 is a flow diagram illustrating an example method
`for determining whether a household performed a transac-
`tion associated with a campaign.
`FIG. 12 is a flow diagram illustrating another example
`method for determining a probability that a browsing session
`was initiated in response to watching and/or listening to
`media associated with a campaign.
`FIG. 13 is a flow diagram illustrating another example
`method for determining a probability that a browsing session
`was initiated in response to watching and/or listening to
`media associated with a campaign.
`FIG. 14 is a flow diagram illustrating another example
`method for determining a probability that a browsing session
`was initiated in response to watching and/or listening to
`media associated with a campaign.
`FIG. 15 is a flow diagram illustrating an example method
`for associating a unique identifier with a physical address
`associated with a user and then determining a probability
`that that user initiated a browser session in response to
`watching and/orlistening media associated with a campaign.
`FIG. 16 is a flow diagram illustrating an example method
`for associating a unique identifier with a physical address
`associated with a user and then determining when to send
`notifications to the user.
`
`DETAILED DESCRIPTION
`
`FIG. 1 illustrates a block diagram of an example com-
`puting device 100. The computing device 100 may include
`a personal computer, such as a laptop or desktop computer,
`a tablet device, a cellular phone or smartphone, a server, or
`another type of computing device. The computing device
`100 mayinclude a processor 102, a communicationinterface
`104, a memory 106, a display 108, input devices 110, output
`devices 112, and/or a GPScircuit 114. The computing device
`100 may include additional, different, or fewer components.
`The processor 102 may include one or more general
`purpose processors, special purpose processors, conven-
`tional processors, digital signal processors (DSPs), micro-
`processors, integrated circuits, a programmable logic device
`(PLD), application specific integrated circuits (ASICs), or
`the like. The processor 102 may perform signal coding, data
`processing, image processing, power control, input/output
`
`20
`
`35
`
`40
`
`45
`
`50
`
`55
`
`4
`processing, and/or any other functionality that enables the
`computing device 100 to perform as described herein.
`The processor 102 may store information in and/or
`retrieve information from the memory 106. The memory 106
`may include a non-removable memory and/or a removable
`memory. The non-removable memory may include random-
`access memory (RAM), read-only memory (ROM), a hard
`disk, or any other type of non-removable memory storage.
`The removable memory may include a subscriber identity
`module (SIM)card, a memory stick, a memory card, or any
`other type of removable memory. The memory maybelocal
`memory or remote memory external to the computing device
`100. The memory 106 may store instructions which are
`executable by the processor 102. Different information may
`be stored in different locations in the memory 106.
`The memory 106 may comprise a computer-readable
`storage media or machine-readable storage mediathat stores
`computer-executable
`instructions
`for
`performing
`as
`described herein. The computer-executable instructions may
`comprise one or more portions of the procedures 300, 400,
`500, 600, 800, 900, 1000, 1100, 1200, 1300, 1400, 1500,
`and/or 1600 for performing as described herein. The pro-
`cessor 102 mayaccess the instructions from memory 106 for
`being executed to cause the processor 102 to operate as
`described herein, or to operate one or more devices as
`described herein.
`
`The processor 102 that may communicate with other
`devices via the communication device 104. The communi-
`
`cation device 104 may transmit and/or receive information
`over the network 116, which may include one or more other
`computing devices. The communication device 104 may
`perform wireless and/or wired communications. The com-
`munication device 104 may include a receiver, transmitter,
`transceiver, or other device capable of performing wireless
`communications via an antenna. The communication device
`
`104 may be capable of communicating via one or more
`protocols, such as a cellular communication protocol, a
`Wi-Fi communication protocol, Bluetooth®, a near field
`communication (NFC) protocol,
`an internet protocol,
`another proprietary protocol, or any other radio frequency
`(RF) or communications protocol. The computing device
`100 may include one or more communication devices 104.
`The processor 102 may be in communication with a
`display 108 for providing information to a user. The infor-
`mation may be provided via a user interface on the display
`108. The information may be provided as an image gener-
`ated on the display 108. The display 108 and the processor
`102 maybe in two-way communication, as the display 108
`may include a touch-screen device capable of receiving
`information from a user and providing such information to
`the processor 102.
`The processor 102 may be in communication with a GPS
`circuit 114 for receiving geospatial information. The pro-
`cessor 102 may be capable of determining the GPS coordi-
`nates of the wireless communication device 100 based on
`the geospatial information received from the GPS circuit
`114. The geospatial information may be communicated to
`one or more other communication devices to identify the
`location of the computing device 100.
`The processor 102 may be in communication with input
`devices 110 and/or output devices 112. The input devices
`110 may include a camera, a microphone, a keyboard or
`other buttons or keys, and/or other types of input devices for
`sending information to the processor 102. The display 108
`may be a type of input device, as the display 108 may
`include touch-screen sensor capable of sending information
`to the processor 102. The output devices 112 may include
`
`Launch Labs EX1005 Page 20
`
`Launch Labs EX1005 Page 20
`
`
`
`US 12,051,083 B2
`
`5
`speakers, indicatorlights, or other output devices capable of
`receiving signals from the processor 102 and providing
`output from the computing device 100. The display 108 may
`be a type of output device, as the display 108 may provide
`imagesor other visual display of information received from
`the processor 102.
`FIG. 2 illustrates a block diagram of an example com-
`puting network system 200. The computing network system
`200 may include one or more computing devices 230a-230n
`that may be capable of communicating digital messages with
`one another, either directly or via the network 220. The
`computing devices 230-2307 may be user devices capable of
`logging into a session (e.g., a browsing session) of an
`interactive computing environment and providing real-time
`interactive data via the network 220. The network 220 may
`include a wired and/or wireless network. For example, the
`network 220 may include a Wi-Fi communication network,
`a Wi-MAX communication network, a cellular communi-
`cation network (e.g., COMA, HSPA+, LTE,etc.), and/or a
`television white space (TVWS) communication network.
`The network 220 may include one or more communication
`networks.
`The one or more computing devices 230a-230n may be
`capable of communicating digital messages to and/or receiv-
`ing digital messages from the computing device 210 via the
`network 220. The computing device 210 may bea server,
`such as a web server, for providing a user interface to the
`computing devices 230a-230n. The computing device 210
`may be in communication with an application executing
`locally on the computing devices 230a-230n for providing a
`user interface at the computing devices. The display of
`information may be generated locally at the computing
`devices 230a-230n or at the computing device 210 and
`provided via an application (e.g., a web browser) at the
`computing devices 230a-230n.
`Oneor more of the computing devices 230a-2307 may be
`operated by an administrative user capable of configuring
`sessions of an interactive computing environment that may
`be stored at the computing device 210. The computing
`device operated by the administrative user may submit
`credentials to the computing device 210 to allow the session
`to be configured. The session may be accessed by the
`computing devices 230a-2307 via the network 220.
`FIG.3 is a flow diagram of an example method 300 that
`may be implemented by one or more computing devices
`(e.g., such as the computing devices 230a-230n shown in
`FIG. 2) to identify a physical address of a user based on
`anonymousdata. The method 300, or portions thereof, may
`be performed to enable engagement with the user based on
`one or more return visits to a uniform resource locator
`
`(URL). Engagement with the user may include sending
`notification(s) to the user, determining one or more adver-
`tisements for the user, track service needs for a vehicle
`operated by the user or someone in the user’s household,
`and/or the like. For example, the user may be an owner/
`operator of the vehicle. The notification(s) may include
`emails, text messages, mobile phone notifications, phone
`calls, advertisements, and/or the like. The method 300, or
`portions thereof, may be performed at a single computing
`device or may be distributed across multiple computing
`devices (e.g., multiple servers and/or a user device). The
`method 300, or portions thereof, may be performed to enable
`users, such as administrative users, to determine that the user
`has a specific interest in one or more products. The method
`300, or portions thereof, may be performed to enable the
`administrative users to quantify the user’s interest in the
`product(s). The method 300, or portions thereof, may be
`
`20
`
`35
`
`40
`
`45
`
`55
`
`6
`performed to enable adaptive generation of notifications to
`the user based on the specific interest in the product and/or
`the physical address associated with the user. The method
`300 may comprise instructions that may be stored in
`memory as computer-readable or machine-readable storage
`media that may be executed by the one or more computing
`devices for executing the method 300. The method 300, or
`portions thereof, may reduce the amount of processing
`resources used by the computing device during a predeter-
`mined period (e.g., day). The method 300, or portions
`thereof, may improve the functionality of a computer net-
`work system (e.g., such as the computing network system
`200 shown in FIG. 2) associated with engagement of the
`user. In addition, the method 300, or portions thereof, may
`implement a distributed network architecture, as shown in
`FIG. 2, which may reduce the amount of signaling between
`a user computing device and one or more administrative
`computing devices (e.g., such as the computing devices
`230a, 2306, 230” shown in FIG. 2) and may r