4.8 KiB
Send V2 Metrics Definitions
Key Value Prop
Quickly and privately transfer large files from any device to any device.
Key Business Question to Answer
Is the value proposition of a large encrypted file transfer service enough to drive Firefox Account relationships for non-Firefox users.
Hypotheses to Test
Primary - In support of Relationships KPI
We believe that a privacy-respecting file transfer service can drive Firefox Accounts beyond the Firefox Browser.
We will know this to be true when we see 250k Firefox Account creations from non-Firefox contexts w/in six months of launch.
Secondary - In support of Revenue KPI
We believe that a privacy respecting service accessible beyond the reach of Firefox will provide a valuable platform to research, communicate with, and market to conscious choosers we have traditionally found hard to reach.
We will know this to be true when we can conduct six research tasks (surveys, A/B tests, fake doors, etc) in support of premium services KPIs in the first six months after launch.
Overview of Key Measures
- Number of people using the service to send and receive files
- Why: measure of service size. Important for understanding addressable market size
- Percent of users who have or create an FxAccount via Send
- Why: representation of % of any service users who might be amenable to an upsell
- % of downloaders who convert into uploaders
- Why: represents a measure of our key growth-loop potential
- Count of uploads and size
- Why: Represents cost of service on a running basis
Key Funnels
- App Open or Visit
--- DESIRED OUTCOME --->Successful Upload - Download UI Visit
--- DESIRED OUTCOME --->Successful Download - FxA UI Engagement
--- DESIRED OUTCOME --->Authenticate - STRETCH App Open or Visit
--- DESIRED OUTCOME --->Successful Download
Amplitude Schema
Please see, See Amplitude HTTP API(https://amplitude.zendesk.com/hc/en-us/articles/204771828) for HTTP API reference.
Metric Events
In support of our KPIs we collect events from two separate contexts, server and client. The events are designed to have minimal correlation between contexts.
Server events collect lifecycle information about individual uploads but no user information; also time precision is truncated to hour increments. Client events collect information about how users interact with the UI but no upload identifiers.
Server Events
Server events allow us to aggregate data about file lifecycle without collecting data about individual users. In this context user_id and user_properties describe the uploaded archive.
session_id-1 (not part of a session)user_idhash of (archive_id + owner_id)app_versionpackage.json versiontimetimestamp truncated to hour precisioncountryregionevent_type[server_upload | server_download | server_delete]user_propertiesdownload_limitset number of downloadstime_limitset expiry durationsizeapproximate size (log10)anonymoustrue if anonymous, false if fxa
event_propertiesdownload_countdownloads completedttltime remaining before expiry truncated to hour
Client Events
Client events allow us to aggregate data about how the user interface is being used without tracking the lifecycle of individual files. In this context user_id and user_properties describe the user. The user_id and device_id change for all users at the beginning of each month.
session_idtimestampuser_idhash of (fxa_id + Date.year + Date.month)device_idhash of (localStorage random id + Date.year + Date.month)platform[web | android]countryregionlanguagetimetimestampos_nameevent_type[client_visit | client_upload | client_download | client_delete | client_login | client_logout]event_propertiesbrowserbrowser_versionstatus[ ok | error | cancel ]- Event specific properties (see below)
user_propertiesactive_countnumber of active uploadsanonymoustrue if anonymous, false if fxaexperimentslist of experiment ids the user is participating infirst_actionhow this use came to Send the first time [ upload | download ]
Visit Event
entrypoint[ upload | download ]
Upload Event
download_limitdownload limitfile_countnumber of filespassword_protectedbooleansizeapproximate size (log10)time_limittime limitdurationapproximate transfer duration (log10)
Download Event
password_protectedbooleansizeapproximate size (log10)durationapproximate transfer duration (log10)
Delete Event
agehours since uploadeddownloadeddownloaded at least once
Login Event
trigger[button | time | count | size]
Logout Event
trigger[button | timeout]