Command Palette

Search for a command to run...

Page Inspect

https://www.singer.io/
Internal Links
120
External Links
9
Images
119
Headings
126

Page Content

Title:Singer | Open Source ETL
Description:Simple, Composable, Open Source ETL
HTML Size:44 KB
Markdown Size:5 KB
Fetched At:November 18, 2025

Page Structure

h1Simple, Composable, Open Source ETL
h3The open-source standard for writing scripts that move data.
h4Try it
h3Features
h4Unix-inspired
h4JSON-based
h4Efficient
h3Singer Taps
h53PL Central
h5ActiveCampaign
h5AdRoll
h5Amazon S3 CSV
h5Amplitude
h5AppsFlyer
h5Autopilot
h5BigCommerce
h5Bing Ads
h5Braintree
h5Bronto
h5COVID-19 Public Data
h5Campaign Manager
h5Campaign Monitor
h5Chargebee
h5Chargify
h5Close
h5Club Speed
h5Codat
h5Dark Sky
h5Deputy
h5Dynamo DB
h5Ebay
h5Eloqua
h5Exchange Rates API
h5Facebook Ads
h5Freshdesk
h5Front
h5FullStory
h5GitHub
h5GitLab
h5Google Ads
h5Google Analytics
h5Google Analytics 360
h5Google Search Console
h5Google Sheets
h5Harvest
h5Harvest
h5Harvest Forecast
h5Heap
h5HubSpot
h5IBM Db2

Markdown Content

Singer | Open Source ETL

How It Works Taps & Targets How to Contribute

GitHub Roadmap

☰

# Simple, Composable, Open Source ETL

Singer powers data extraction and consolidation for all of your organization’s tools.

See It in Action

Join us on Slack

### The open-source standard for writing scripts that move data.

Singer describes how data extraction scripts—called “taps” —and data loading scripts—called “targets”— should communicate, allowing them to be used in any combination to move data from any source to any destination. Send data between databases, web APIs, files, queues, and just about anything else you can think of.

#### Try it

For example, these two simple commands pull currency exchange rate data from Exchangeratesapi.io into a CSV file:

Check out the directory of taps and targets for more data sources and destinations.

`› pip install target-csv tap-exchangeratesapi`
`› tap-exchangeratesapi | target-csv`
`    INFO Replicating the latest exchange rate data from exchangeratesapi.io`
`    INFO Tap exiting normally`
`› cat exchange_rate.csv`
`AUD,BGN,BRL,CAD,CHF,CNY,CZK,DKK,GBP,HKD,HRK,HUF,IDR,ILS,INR,JPY,KRW,MXN,MYR,NOK,NZD,PHP,PLN,RON,RUB,SEK,SGD,THB,TRY,ZAR,EUR,USD,date`
`1.3023,1.8435,3.0889,1.3109,1.0038,6.869,25.47,7.0076,0.79652,7.7614,7.0011,290.88,13317.0,3.6988,66.608,112.21,1129.4,19.694,4.4405,8.3292,1.3867,50.198,4.0632,4.2577,58.105,8.9724,1.4037,34.882,3.581,12.915,0.9426,1.0,2017-02-24T00:00:00Z`


Check out the directory of taps and targets for more data sources and destinations.

### Features

- #### Unix-inspired
Singer taps and targets are simple applications composed with pipes—no daemons or complicated plugins needed.
- #### JSON-based
Singer applications communicate with JSON, making them easy to work with and implement in any programming language. Singer also supports JSON Schema to provide rich data types and rigid structure when needed.
- #### Efficient
Singer makes it easy to maintain state between invocations to support incremental extraction.

### Singer Taps

**Taps** extract data from any source and write it to a standard stream in a JSON-based format.

- ##### 3PL Central
- ##### ActiveCampaign
- ##### AdRoll
- ##### Amazon S3 CSV
- ##### Amplitude
- ##### AppsFlyer
- ##### Autopilot
- ##### BigCommerce
- ##### Bing Ads
- ##### Braintree
- ##### Bronto
- ##### COVID-19 Public Data
- ##### Campaign Manager
- ##### Campaign Monitor
- ##### Chargebee
- ##### Chargify
- ##### Close
- ##### Club Speed
- ##### Codat
- ##### Dark Sky
- ##### Deputy
- ##### Dynamo DB
- ##### Ebay
- ##### Eloqua
- ##### Exchange Rates API
- ##### Facebook Ads
- ##### Freshdesk
- ##### Front
- ##### FullStory
- ##### GitHub
- ##### GitLab
- ##### Google Ads
- ##### Google Analytics
- ##### Google Analytics 360
- ##### Google Search Console
- ##### Google Sheets
- ##### Harvest
- ##### Harvest
- ##### Harvest Forecast
- ##### Heap
- ##### HubSpot
- ##### IBM Db2
- ##### Impact
- ##### Intercom
- ##### Invoiced
- ##### Jira
- ##### Klaviyo
- ##### Kustomer
- ##### Lever
- ##### LinkedIn Ads
- ##### Listrak
- ##### LivePerson
- ##### LookML
- ##### Looker
- ##### Mailshake
- ##### Mambu
- ##### Marketo
- ##### Mixpanel
- ##### MySQL
- ##### Onfleet
- ##### Oracle
- ##### Outbrain
- ##### Outreach
- ##### Pardot
- ##### Pendo
- ##### Pepperjam
- ##### Pipedrive
- ##### Platform Purple
- ##### PostgreSQL
- ##### Quick Base
- ##### Recharge
- ##### Recurly
- ##### Referral SaaSquatch
- ##### Responsys
- ##### Revinate
- ##### SFTP
- ##### SaaSOptics
- ##### SailThru
- ##### Salesforce
- ##### Salesforce Marketing Cloud
- ##### Selligent
- ##### SendGrid Core
- ##### ShipHero
- ##### Shippo
- ##### Shopify
- ##### Slack
- ##### Square
- ##### Stripe
- ##### SurveyMonkey
- ##### Taboola
- ##### Toggl
- ##### Trello
- ##### Typeform
- ##### Urban Airship
- ##### Uservoice
- ##### Wootric
- ##### Workday RaaS
- ##### Xero
- ##### Yotpo
- ##### Zendesk Chat
- ##### Zendesk Support
- ##### Zoom
- ##### Zuora
- ##### iLEVEL
- ##### Develop a Tap

### Singer Targets

**Targets** consume data from taps and do something with it, like load it into a file, API or database.

- ##### CSV
- ##### Google BigQuery
- ##### Google Sheets
- ##### Keboola
- ##### Magento BI
- ##### PostgreSQL
- ##### Rakam
- ##### ReSci
- ##### Stitch
- ##### data.world
- ##### Develop a Target

## How to contribute

Explore all of our resources for contributing to Singer

Join us on Slack to collaborate with hundreds of members of the Singer community.

Check out the Singer GitHub to learn more and see what projects are in the works.

Sponsored by

Singer is sponsored by Stitch, a fully-managed data pipeline. With Stitch you can run Singer taps on your schedule, stream the data to your warehouse, and enjoy automated monitoring and alerting.

Community

- GitHub
- Slack Community
- Twitter

Singer supports The Human Utility to help families pay their water bills.