Startup Tools: Mobile App Store Customer Analytics/Ad Platform

Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 2
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 3
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 4
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 5
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 6
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 7
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 8
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 9

Fortune 500 companies, investors, top publishers, independents, students... from experts to beginners, they're all here. Most of the world's developers rely on the TestFlight platform for beta testing, crash reporting and analytics.

Download the TestFlight SDK to access more features.

One of the most popular SDKs in the world. The TestFlight SDK gives you unparalleled insight as your app evolves. Track your testers, pinpoint crashes and use well-placed checkpoints with actionable data, all from a single SDK.

Get more from your mobile app with the Burstly fleet.

Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 11
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 12

Keen IO's powerful APIs do the heavy lifting for you, so you can gather all the data you want and start getting the answers you need.

Start Sending Events in Minutes

Analytics transforms data into answers - the kind of answers every company deserves. Unfortunately, a lot of companies a) can't find an analytics service that's right for their specific needs and b) don't have the resources to develop their own analytics infrastructure. That's why we started Keen IO. Basically, we built it, so you don't have to. And we made it powerful, flexible, and scalable enough that you can use it however you need to - even if those needs change over time.

And we do it quicker, easier, cheaper, and more precisely than they could on their own.

Keen IO offers up the best possible building blocks for analytics, so you can create the ideal analytics solution for your needs.

Keen IO was built to collect and store huge amounts of event data - those constant little interactions that happen all day, every day, in your apps. You send 'em, and we store 'em in our cloud database, so you can play around with them whenever you'd like.

Collect data from any source

If it connects to the internet, you can use Keen IO to grab data from it: Websites, web apps, servers, mobile devices, cars, smartwatches, electronic kangaroo tracking collars - it's all good!

    Data collection is quick and painless. Use our super-simple REST API, our ready-made SDKs, or one of the, like, 8 other tools we've built.

Learn more about our data collection APIs

Grab exactly the data you need

Event data can be anything - signups, upgrades, impressions, purchases, errors, shares. The arbitrary JSON format we use makes it easy to grab exactly the data you're looking for, with all of the custom properties you've been dreaming of.

  • Instant gratification: As soon as you send data, it's available for query (give or take a subsecond).
  • Event data is Big Data. That's why we built a massively scalable, super-resilient event data backend. Send us your worst. We can handle it.

Sign up for free Learn more about data modeling

// Register your client.
[KeenClient sharedClientWithProjectId:@"projectId" andWriteKey:@"writeKey" andReadKey:nil];

// Build your event properties as a dictionary.
NSDictionary *ticketPurchase = @{
    @"price" : @(50.00),
    @"user" : @{
        @"id" : @"020939382",
        @"age" : @(28),
        @"gender" : @"M"
    },
    @"artist" : @{
        @"id" : @"19039",
        @"name" : @"Meshuggah"
    },
    @"venue" : @{
        @"id" : @"A93DJ",
        @"name" : @"Slim's",
        @"city" : @"San Francisco",
        @"state" : @"California"
    }
};

// Add your event to the "ticket_purchases" collection.
[[KeenClient sharedClient] addEvent:ticketPurchase toCollection:@"ticket_purchases"];
// Send us your tracked events.
[[KeenClient sharedClient] uploadWithFinishedBlock:nil];
// Register your client.
KeenClient.initialize(getApplicationContext(), "projectId", "writeKey", null);
// Build your event properties as a Map.
Map<String, Object> userData = new HashMap<String, Object>();
userData.put("id", "020939382");
userData.put("age", "28");
userData.put("gender", "M");
Map<String, Object> artistData = new HashMap<String, Object>();
artistData.put("id", "19039");
artistData.put("name", "Meshuggah");
Map<String, Object> venueData = new HashMap<String, Object>();
venueData.put("id", "A93DJ");
venueData.put("name", "Slim's");
venueData.put("city", "San Francisco");
venueData.put("state", "California");
Map<String, Object> ticketPurchase = new HashMap<String, Object>();
ticketPurchaseData.put("price", 50.00);
ticketPurchaseData.put("user", userData);
ticketPurchaseData.put("artist", artistData);
ticketPurchaseData.put("venue", venutData);
// Add your event to the "ticket_purchases" collection.
KeenClient.client().addEvent("ticket_purchases", ticketPurchase);
// Send us your tracked events.
KeenClient.client().upload();
// Register your client
$client = KeenIOClient::factory([
    'projectId' => $projectId,
    'writeKey' => $writeKey
]);

// Build your event properties as an associative array.
$ticketPurchase = [
    "price" => 50.00,
    "user" => [
        "id" => "020939382",
        "age" => 28,
        "gender" => "M"
    ],
    "artist" => [
        "id" => "19039",
        "name" => "Meshuggah"
    ],
    "venue" => [
        "id" => "A93DJ",
        "name" => "Slim's",
        "city" => "San Francisco",
        "state" => "California"
    ]
]

# Add your event to the "ticket_purchases" collection.
$client->addEvent( "ticket_purchases", [ "data" => $ticketPurchase ] );
// Register your client.
Keen.configure({projectId: "projectId", writeKey: "writeKey"});

// Build your event properties as a JavaScript Object.
var ticketPurchase = {
    price: 50.00,
    user: {
        id: "020939382",
        age: 28,
        gender: "M"
    },
    artist: {
        id: "19039",
        name: "Meshuggah"
    },
    venue: {
        id: "A93DJ",
        name: "Slim's",
        city: "San Francisco",
        state: "California"
    }
}
// Add your event to the "ticket_purchases" collection.
Keen.addEvent("ticket_purchases", ticketPurchase);
# Initialize the Keen Client.
keen = Keen::Client.new(:project_id => "project_id", :write_key => "write_key")

# Build your event properties as a hash.
ticket_purchase = {
    :price => 50.00,
    :user => {
        :id => "020939382",
        :age => 28,
        :gender => "M"
    },
    :artist => {
        :id => "19039",
        :name => "Meshuggah"
    },
    :venue => {
        :id => "A93DJ",
        :name => "Slim's",
        :city => "San Francisco",
        :state => "California"
    }
}
# Add your event to the "ticket_purchases" collection.
keen.add_event("ticket_purchases", ticket_purchase)
# Initialize the Keen Client.
keen = keen.client.KeenClient("project_id", write_key="write_key")

# Build your event properties as a dictionary.
ticket_purchase = {
    "price" : 50.00,
    "user": {
        "id": "020939382",
        "age": 28,
        "gender": "M"
    },
    "artist": {
        "id": "19039",
        "name": "Meshuggah"
    },
    "venue": {
        "id": "A93DJ",
        "name": "Slim's",
        "city": "San Francisco",
        "state": "California"
    }
}
# Add your event to the "ticket_purchases" collection.
keen.add_event("ticket_purchases", ticket_purchase)
// Register your client.
KeenClient.initialize("projectId", "writeKey", null);
// Build your event properties as a Map.
Map<String, Object> userData = new HashMap<String, Object>();
userData.put("id", "020939382");
userData.put("age", "28");
userData.put("gender", "M");
Map<String, Object> artistData = new HashMap<String, Object>();
artistData.put("id", "19039");
artistData.put("name", "Meshuggah");
Map<String, Object> venueData = new HashMap<String, Object>();
venueData.put("id", "A93DJ");
venueData.put("name", "Slim's");
venueData.put("city", "San Francisco");
venueData.put("state", "California");
Map<String, Object> ticketPurchase = new HashMap<String, Object>();
ticketPurchaseData.put("price", 50.00);
ticketPurchaseData.put("user", userData);
ticketPurchaseData.put("artist", artistData);
ticketPurchaseData.put("venue", venutData);
// Add your event to the "ticket_purchases" collection.
KeenClient.client().addEvent("ticket_purchases", ticketPurchase);
// Send us your tracked events.
KeenClient.client().upload();

Once you've sent us some events, that's when the real fun can begin. Our powerful analysis API lets you perform any sort of query you need today - and any you might think of in the future. And our visualization tools help you chart that data and transform it into answers.

Ask the questions you want to ask

Unlike other analytics services, which usually only offer pre-defined reports, Keen IO gives you the tools to measure exactly what you want. Any property, any query, any way you'd like it.

  • Our intuitive query API has a ton of built-in resources that allow you to do all the analytics must-haves: Counts and sums, mins and maxes, averages, all that jazz.
  • Create queries on the fly and get responses back in real-time, no matter the size of your dataset. Because you shouldn't have to wait for answers.
  • Combine elements of our analysis APIs to build the dashboard of your dreams. Segment data by timeframe, interval, and groups. Create funnels and cohort analyses. Measure conversion and engagement. Make magic happen.

Learn more about our data analysis APIs

Make your answers tangible with embeddable charts and metrics

We make it easy to draw metrics, line charts, pie charts, and funnels with our JavaScript SDK, but you can also use your Keen IO data with any charting library to customize your look and functionality as you see fit.

Sign up for free Learn more about our data visualizations

var data = new Keen.Metric("ticket_purchases", {
    analysisType: "count",
    timeframe: "previous_7_days",
    groupBy: "venue.state"
});

data.draw($("myElementId"), {
    title: "Ticket Purchases by State"
});
var series = new Keen.Series("ticket_purchases", {
    analysisType: "count",
    timeframe: "previous_7_days",
    interval: "daily"
});

series.draw($("myElementId"), {
    label: "purchases",
    title: "Daily Ticket Purchases"
});
var s1 = new Keen.Step("download app");
var s2 = new Keen.Step("create account");
var s3 = new Keen.Step("ticket purchases");

var funnel = new Keen.Funnel([s1, s2, s3], {
    actorProperty: "user.id"
});
funnel.draw($("myElemendId"), {
    title: "User Life Cycle Funnel"
});
var metric = new Keen.Metric("ticket_purchases", {
    analysisType: "sum",
    targetProperty: "price",
    timeframe: "yesterday"
});

metric.draw($("myMetric"), {
    label: "Yesterday's Total Revenue"
});

Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 14
Startup Tools: Mobile App Store Customer Analytics/Ad Platform - Page 15