IP Library Granted Patent US 10,861,055
Granted Patent B1
US 10,861,055 · App. 16/579,696 · Granted Dec 8, 2020

Method and system for identifying users across mobile and desktop devices

Inventors: Chinmoy Dutta (Mountain View, CA); Santosh Kancha (Pleasanton, CA); Junjun Li (Redwood City, CA); Wanchen Lu (San Mateo, CA); Milind Mahajan (Seattle, WA); Sandeep Pandey (San Francisco, CA); Xiaochuan Qin (Issaquah, WA); Ameet Ranadive (San Francisco, CA); Vibhor Rastogi (San Francisco, CA); Shariq Rizvi (Mountain View, CA); Abhishek Shrivastava (Santa Clara, CA); Yimin Wu (Seattle, WA); Lei Zhang (Sammamish, WA); Ke Zhou (Walnut Creek, CA)
Assignee: Twitter, Inc.
G06Q30/0269G06Q30/0201G06Q30/0267G06Q50/01H04L67/02H04L67/22H04L67/306
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,861,055
App. No.
16/579,696
Filed
Sep 23, 2019
Granted
Dec 8, 2020
Kind
B1
Art Unit
3623
USPC
705/7.29
Abstract

A method for conversion attribution. The method includes obtaining a first identifier associated with a first device, obtaining a second identifier associated with a second device, bridging the first identifier and the second identifier based on a determination, made by a probabilistic classifier, that the first identifier and the second identifier are associated with a common user, and attributing, using the bridge, a conversion on a website accessed using the second device.

Claims (56)

1. A method comprising:

performing deterministic identifier bridging to obtain a collection of mappings between pairs of identifiers, wherein the mapping between a pair of identifiers indicates that the identifiers are associated with a common user;

training a probabilistic classifier using the collection of mappings wherein the probabilistic classifier is trained to generate a probability that two input identifiers, of different types, are associated with a particular common user;

after the training:

mapping a collection of identifiers based on a determination, made by the probabilistic classifier, that respective pairs of identifiers are associated with a common user;

receiving a fill request from an application of a user device, wherein the fill request comprises a request for content to fill a portion of a user interface of the application, and wherein the fill request includes a device identifier identifying the user device;

using the respective pairs of identifiers to determine one or more partner identifiers mapped to the device identifier;

sending the received one or more partner identifiers along with a content request to a plurality of content providers;

receiving, in response to the content request, a plurality of content responses from one or more content providers of the plurality of content providers;

selecting a content response from the content responses; and

providing the content response to the user device in response to the fill request, the content response including content to fill the portion of the user interface.

2. The method of claim 1 , wherein each partner identifier of the plurality of partner identifiers identifies a respective user, wherein the partner identifier is created when the respective user accesses content provided by a corresponding partner of a plurality of partners.

3. The method of claim 2 , wherein the content provided by particular partner for placement on the application of the user device is selected based on information about a user of the user device determined from the partner identifier for the particular partner and mapped to the device identifier.

4. The method of claim 3 , wherein the content provided by the particular partner for placement on the application of the user device is selecting without receiving the device identifier.

5. The method of claim 2 , wherein:

a partner of the plurality of partners is configured to provide digital content to a social media platform comprising a plurality of user accounts;

the mapping further maps each of the plurality of device identifiers and the plurality of partner identifiers to a plurality of social media identifiers identifying respective user accounts of the plurality of user accounts.

6. The method of claim 1 , wherein the mapping includes associations between the plurality of device identifiers and a plurality of partner user identifiers based on a determination that a probability of each association is more than a threshold value.

7. A non-transitory computer program product storing instructions that, when executed by at least one programmable processor, cause the at least one programmable processor to perform operations comprising:

performing deterministic identifier bridging to obtain a collection of mappings between pairs of identifiers, wherein the mapping between a pair of identifiers indicates that the identifiers are associated with a common user;

training a probabilistic classifier using the collection of mappings wherein the probabilistic classifier is trained to generate a probability that two input identifiers, of different types, are associated with a particular common user;

after the training:

mapping a collection of identifiers based on a determination, made by the probabilistic classifier, that respective pairs of identifiers are associated with a common user;

receiving a fill request from an application of a user device, wherein the fill request comprises a request for content to fill a portion of a user interface of the application, and wherein the fill request includes a device identifier identifying the user device;

using the respective pairs of identifiers to determine one or more partner identifiers mapped to the device identifier;

sending the received one or more partner identifiers along with a content request to a plurality of content providers;

receiving, in response to the content request, a plurality of content responses from one or more content providers of the plurality of content providers;

selecting a content response from the content responses; and

providing the content response to the user device in response to the fill request, the content response including content to fill the portion of the user interface.

8. The non-transitory computer program product of claim 7 , wherein each partner identifier of the plurality of partner identifiers identifies a respective user, wherein the partner identifier is created when the respective user accesses content provided by a corresponding partner of a plurality of partners.

9. The non-transitory computer program product of claim 8 , wherein the content provided by particular partner for placement on the application of the user device is selected based on information about a user of the user device determined from the partner identifier for the particular partner and mapped to the device identifier.

10. The non-transitory computer program product of claim 9 , wherein the content provided by the particular partner for placement on the application of the user device is selecting without receiving the device identifier.

11. The non-transitory computer program product of claim 8 , wherein:

a partner of the plurality of partners is configured to provide digital content to a social media platform comprising a plurality of user accounts;

the mapping further maps each of the plurality of device identifiers and the plurality of partner identifiers to a plurality of social media identifiers identifying respective user accounts of the plurality of user accounts.

12. The non-transitory computer program product of claim 7 , wherein the mapping includes associations between the plurality of device identifiers and a plurality of partner user identifiers based on a determination that a probability of each association is more than a threshold value.

13. A system comprising:

at least one programmable processor; and

a machine-readable medium storing instructions that, when executed by the at least one processor, cause the at least one programmable processor to perform operations comprising:

performing deterministic identifier bridging to obtain a collection of mappings between pairs of identifiers, wherein the mapping between a pair of identifiers indicates that the identifiers are associated with a common user;

training a probabilistic classifier using the collection of mappings wherein the probabilistic classifier is trained to generate a probability that two input identifiers, of different types, are associated with a particular common user;

after the training:

mapping a collection of identifiers based on a determination, made by the probabilistic classifier, that respective pairs of identifiers are associated with a common user;

receiving a fill request from an application of a user device, wherein the fill request comprises a request for content to fill a portion of a user interface of the application, and wherein the fill request includes a device identifier identifying the user device;

using the respective pairs of identifiers to determine one or more partner identifiers mapped to the device identifier;

sending the received one or more partner identifiers along with a content request to a plurality of content providers;

receiving, in response to the content request, a plurality of content responses from one or more content providers of the plurality of content providers;

selecting a content response from the content responses; and

providing the content response to the user device in response to the fill request, the content response including content to fill the portion of the user interface.

14. The system of claim 13 , wherein each partner identifier of the plurality of partner identifiers identifies a respective user, wherein the partner identifier is created when the respective user accesses content provided by a corresponding partner of a plurality of partners.

15. The system of claim 14 , wherein the content provided by particular partner for placement on the application of the user device is selected based on information about a user of the user device determined from the partner identifier for the particular partner and mapped to the device identifier.

16. The system of claim 15 , wherein the content provided by the particular partner for placement on the application of the user device is selecting without receiving the device identifier.

17. The system of claim 14 , wherein:

a partner of the plurality of partners is configured to provide digital content to a social media platform comprising a plurality of user accounts;

the mapping further maps each of the plurality of device identifiers and the plurality of partner identifiers to a plurality of social media identifiers identifying respective user accounts of the plurality of user accounts.

18. The system of claim 13 , wherein the mapping includes associations between the plurality of device identifiers and a plurality of partner user identifiers based on a determination that a probability of each association is more than a threshold value.

Assignments (7)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL 062079, FRAME 0677) Recorded Mar 3, 2026
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 075015/0574 →
RELEASE OF SECURITY INTEREST Recorded Apr 30, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 071127/0240 →
RELEASE OF SECURITY INTEREST Recorded Mar 27, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 070670/0857 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 062079/0677 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0001 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0086 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2020
From: DUTTA, CHINMOY; KANCHA, SANTOSH; LU, WANCHEN; MAHAJAN, MILIND; PANDEY, SANDEEP; QIN, XIAOCHUAN; RASTOGI, VIBHOR; RIZVI, SHARIQ; SHRIVASTAVA, ABHISHEK; WU, YIMIN; ZHANG, LEI; ZHOU, KE
To: TWITTER, INC.
Reel/Frame 054296/0705 →
Continuity (2)
Continuation 15019959 · Feb 9, 2016
Provisional Application 62113876 · Feb 9, 2015