Skip to main content

What are datasets?

Datasets let you bring data from external systems into Gainable. A dataset groups data from one or more connected sources — like Google Sheets, HubSpot, and Stripe — into a single collection. The data comes in as-is from each source, with no transformation or merging required. You can have several sources in one dataset, and each source’s data stays separate within it. When you’re ready, attach the entire dataset to an app or use it to build a new app from data.
If you need to merge or normalize data from multiple sources into a single unified output (e.g., matching contacts by email across HubSpot and Google Sheets), use a data model and include it in your dataset.

Two ways to use datasets

Build a new app from data

Create a dataset, sync your sources, and let the DataAnalyzer agent design an entire app around your data. Best when starting a new project from existing data.

Attach to an existing app

Attach a dataset to an app you’ve already built. The synced data appears as read-only collections in your app.

Supported data sources

CRM

SourceAuthCapabilities
HubSpotOAuthRead & write contacts, companies, deals
AttioOAuthRead & write CRM data
Folk CRMAPI keyRead & write CRM data
SalesforceOAuthRead & write CRM data

Databases and spreadsheets

SourceAuthCapabilities
Google SheetsOAuthRead & write rows
AirtableOAuthRead & write bases
SupabaseAPI key + URLRead & write tables

Analytics and product

SourceAuthCapabilities
Google AnalyticsOAuthRead analytics data
PostHogAPI keyRead event and user data
MixpanelOAuthRead analytics data
TypeformOAuthRead form responses
LinearOAuthRead & write issues
JiraOAuthRead & write issues

Payments and data warehouses

SourceAuthCapabilities
StripeAPI keyRead customers, invoices, subscriptions
DatabricksClient credentialsRead catalogs, schemas, tables, run SQL

How it works

1

Connect a data source

Choose a connector and authenticate with OAuth or an API key. Gainable securely stores the connection. You can have several connectors to the same source with different credentials, for example multiple HubSpot accounts.
2

Create a dataset

Create a new dataset and give it a name. A dataset is a container for one or more data sources.
3

Add sources to the dataset

Select which connected sources to include in the dataset. For each source, pick what data to include (for Google Sheets: spreadsheet + sheet, for HubSpot: contacts, deals, etc.).You can add multiple sources to the same dataset — for example, contacts from HubSpot, revenue data from Google Sheets, and payment data from Stripe.
4

Optionally include data models

If you need merged or normalized views of your data, create a data model and include it in the dataset. Data models let you combine data from multiple sources using merge keys and field mappings.
5

Sync the data

Sync to pull the latest data from all connected sources into Gainable. Each source’s data is stored as-is in the dataset.

Multiple sources in one dataset

A key feature of datasets is combining data from different systems without merging. Each source stays separate — you’re grouping related data together, not transforming it.
You have customer data spread across three systems:
  • HubSpot — contacts and deals
  • Google Sheets — quarterly targets and notes
  • Stripe — payments and subscriptions
Create a single “Sales Operations” dataset and add all three sources. After syncing, your dataset contains all the data from each source, kept separate but accessible together. When you build an app from this dataset or attach it to an existing app, all three sources are available.

Including data models in a dataset

Datasets take data as-is from sources. But sometimes you need a unified view — for example, merging contacts from HubSpot and Google Sheets by email, or normalizing field names across systems. For this, create a data model with merge keys and field mappings, then include it in your dataset. The data model produces a single merged output that lives alongside your raw source data in the dataset.

Manage datasets

The dataset interface has 3 main areas:
  • Connections tab: View all connected sources in the dataset
  • Preview tab: View sample data from connected sources before committing a sync
  • Cron tab: Enable auto sync to keep the data updated from connected sources
Use the Sync button in the Preview tab to pull the latest data from connected sources.

Best practices

Don’t try to work around source boundaries. If you need to match records across sources (e.g., contacts by email), create a data model with merge keys and include it in the dataset.
Always check the Preview tab before running a full sync. This lets you catch unexpected data or connection issues before they reach your app.

Learn more

Build from data

Let AI analyze your dataset and build an app around it

Data models

Merge and normalize data from multiple sources

AI agents overview

Add intelligent AI assistants to your apps

Agent functions

Connect agents to your app data through API endpoints