A method for passively collecting context data, the method comprising: receiving, by one or more processors, from each earbud (240, 242) in a pair of earbuds worn by a user, sensor data corresponding to an orientation of each respective earbud; receiving, by the one or more processors, location data of the user as the user travels within the facility; determining, by the one or more processors, based on the received sensor data, gaze directions of the user as the user travels within a facility; and determining, by the one or more processors, one or more products viewed by the user while traveling within the facility by comparing, using a content map of the facility, the gaze directions of the user to product locations storing products, wherein the one or more products are the context data; wherein comparing the gaze directions of the user to the product locations comprises: for each gaze direction: determining, from the location data, a location of the user when the gaze direction was determined; and determining whether a ray (704, 804) from the location of the user in the gaze direction intersects a product location of the product locations; wherein the ray has a width representing the user's viewing area when looking in the determined gaze direction; wherein the one or more products are the products stored at product locations the respective rays intersect; wherein the content map defines the layout of the facility and the product locations within the facility. receiving, by one or more processors, from each earbud (240, 242) in a pair of earbuds worn by a user, sensor data corresponding to an orientation of each respective earbud; receiving, by the one or more processors, location data of the user as the user travels within the facility; determining, by the one or more processors, based on the received sensor data, gaze directions of the user as the user travels within a facility; and determining, by the one or more processors, one or more products viewed by the user while traveling within the facility by comparing, using a content map of the facility, the gaze directions of the user to product locations storing products, wherein the one or more products are the context data; wherein comparing the gaze directions of the user to the product locations comprises: for each gaze direction: determining, from the location data, a location of the user when the gaze direction was determined; and determining whether a ray (704, 804) from the location of the user in the gaze direction intersects a product location of the product locations; wherein the ray has a width representing the user's viewing area when looking in the determined gaze direction; wherein the one or more products are the products stored at product locations the respective rays intersect; wherein the content map defines the layout of the facility and the product locations within the facility. for each gaze direction: determining, from the location data, a location of the user when the gaze direction was determined; and determining whether a ray (704, 804) from the location of the user in the gaze direction intersects a product location of the product locations; wherein the ray has a width representing the user's viewing area when looking in the determined gaze direction; determining, from the location data, a location of the user when the gaze direction was determined; and determining whether a ray (704, 804) from the location of the user in the gaze direction intersects a product location of the product locations; wherein the ray has a width representing the user's viewing area when looking in the determined gaze direction; wherein the one or more products are the products stored at product locations the respective rays intersect; wherein the content map defines the layout of the facility and the product locations within the facility.