Everything that you need To build you own SEO tool. Only SERPHouse returns accurate structured data from any Google location worldwide, on any device and for multiple search types.


Google, Bing & Yahoo

We got you covered, We are offering SERP API over most popular search engines. We provides Top 100 results from SERP to build your own solution.


We provides flexibility to choose Device such as Desktop, Tablet and Mobile. Because Search engine provides different results for different devices.


Search Engine provides result based on user location. So we are allowing user to choose what location and language they want to target.

Postback & Pingback

We sends ping to url that provided by user once the search is completed. Postback includes result data. While pingback just calls that url with task id.

Real Time

Each API request runs immediately – no waiting for results.

It will take upto 5 seconds to return the result.


In addition, each API request runs in a full browser, and we'll even solve all CAPTCHAs. Mimicking completely what a human will do. This guarantees that you get what users truly see.

JSON Results

Regular organic results are available as well as Maps, Related Search, People also ask, Answer box, People also serch for and Knowledge Graph.

Ad Results

Retrive ad result in JSON response of request (Supported on Google Only)

API Playground

SERPHouse effortlessly powers your SEO apps and services.


Easy Integration


Use one of our code snippet to get started.

                                    curl -X POST \
                                            -H 'accept: application/json' \
                                            -H 'authorization: Bearer API_TOKEN' \
                                            -H 'content-type: application/json' \
                                        -d '{
                                            "data": {
                                                "q": "Coffee",
                                                "loc":"Texas,United States",
                                                "device": "desktop",
                                                "serp_type": "web"
                                    require 'uri'
                                    require 'net/http'

                                    url = URI("")

                                    http =, url.port)
                                    http.use_ssl = true
                                    http.verify_mode = OpenSSL::SSL::VERIFY_NONE

                                    request =
                                    request["accept"] = 'application/json'
                                    request["content-type"] = 'application/json'
                                    request["authorization"] = 'Bearer API_TOKEN'
                                    request.body = '{"data": {
                                        "domain": "",
                                        "lang": "en",
                                        "q": "Coffee",
                                        "loc": "Texas,United States",
                                        "device": "desktop",
                                        "serp_type": "web"

                                    response = http.request(request)
                                    puts response.read_body
                                    import requests
                                    url = ""
                                    payload = '{"data": {
                                        "domain": "",
                                        "lang": "en",
                                        "q": "Coffee",
                                        "loc": "Texas,United States",
                                        "device": "desktop",
                                        "serp_type": "web"
                                    headers = {
                                        'accept': "application/json",
                                        'content-type': "application/json",
                                        'authorization': "Bearer API_TOKEN"

                                    response = requests.request("POST", url, data=payload, headers=headers)
                                    var http = require("https");

                                    var options = {
                                        "method": "POST",
                                        "hostname": "",
                                        "port": null,
                                        "path": "/serp/live",
                                        "headers": {
                                            "accept": "application/json",
                                            "content-type": "application/json",
                                            "authorization": "Bearer API_TOKEN"

                                    var req = http.request(options, function (res) {
                                        var chunks = [];

                                        res.on("data", function (chunk) {

                                        res.on("end", function () {
                                            var body = Buffer.concat(chunks);

                                        data: {
                                            domain: '',
                                            lang: 'en',
                                            q: 'Coffee',
                                            loc: 'Texas,United States',
                                            device: 'desktop',
                                            serp_type: 'web'
                                    $curl = curl_init();

                                    curl_setopt_array($curl, array(
                                        CURLOPT_URL => "",
                                        CURLOPT_RETURNTRANSFER => true,
                                        CURLOPT_ENCODING => "",
                                        CURLOPT_MAXREDIRS => 10,
                                        CURLOPT_TIMEOUT => 30,
                                        CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
                                        CURLOPT_CUSTOMREQUEST => "POST",
                                        CURLOPT_POSTFIELDS => '{"data": {
                                            "lang": "en",
                                            "q": "Coffee",
                                            "loc": "Texas,United States",
                                            "device": "desktop",
                                            "serp_type": "web"
                                        CURLOPT_HTTPHEADER => array(
                                            "accept: application/json",
                                            "authorization: Bearer API_TOKEN",
                                            "content-type: application/json"

                                    $response = curl_exec($curl);
                                    $err = curl_error($curl);


                                    if ($err) {
                                        echo "cURL Error #:" . $err;
                                    else {
                                        echo $response;
                                    OkHttpClient client = new OkHttpClient();

                                    MediaType mediaType = MediaType.parse("application/json");
                                    RequestBody body = RequestBody.create(mediaType, '{"data": {
                                        "domain": "",
                                        "lang": "en",
                                        "q": "Coffee",
                                        "loc": "Texas,United States",
                                        "device": "desktop",
                                        "serp_type": "web"}}
                                    Request request = new Request.Builder()
                                        .addHeader("accept", "application/json")
                                        .addHeader("content-type", "application/json")
                                        .addHeader("authorization", "Bearer API_TOKEN")

                                    Response response = client.newCall(request).execute();
                                    package main

                                    import (

                                    func main() {
                                        url := ""
                                        payload := strings.NewReader('{"data": {
                                            "lang": "en",
                                            "q": "Coffee",
                                            "loc": "Texas,United States",
                                            "device": "desktop",
                                            "serp_type": "web"}}

                                        req, _ := http.NewRequest("POST", url, payload)

                                        req.Header.Add("accept", "application/json")
                                        req.Header.Add("content-type", "application/json")
                                        req.Header.Add("authorization", "Bearer API_TOKEN")

                                        res, _ := http.DefaultClient.Do(req)

                                        defer res.Body.Close()
                                        body, _ := ioutil.ReadAll(res.Body)


What Makes Us Different?

Who can claim that planning an SEO approach is not a painstaking & labor-intensive task? Keyword analysis, technical review, link building, Rank Tracker, increasing visibility of a website, analyzing the search results, all such tasks are simply a tiny fraction of an SEO’s periodic system. With SERPhouse Search API; Digital Marketing Agencies, Webmasters and Developers can utilize the data in order to blend them inside their private applications or business streams.

SERP API SEO tools provide a window of opportunity for their clients to employ SERP APIs and stimulate more favorable outcomes. SERPhouse API presents the Top-100 SERP results for a keyword, specific to the selected search engines like Google or Bing. Our integrated Google Search API & Bing Search API helps design optimized content, detect & fix website issues and further assist rationalize the entire process of data collection. 

We employ Google Knowledge Graph API that lets users identify your business and reach out to you without even clicking on your webpage. You can design your search engine to explore both images & maps using Google Images API. 

Implement new techniques into your SEO analysis to enhance productivity and conserve your time on hand-operated tasks. Seize your share of the market before your opponents do!



Requests every second




Signup to start using the API today!

You'll be up and running in less than 2 minutes.

No credit card required • Cancel at any time

Free Trial



200 Delayed SERP

200 Live SERP

Data from Google, Bing and Yahoo

HTTPS Encryption



 / Month

20000 Live SERP

20000 Delayed SERP

Data from Google, Bing and Yahoo

HTTPS Encryption

99.9% Uptime SLA

100% Success Rate

Dedicated Support



 / Month

40000 Live SERP

40000 Delayed SERP

Data from Google, Bing and Yahoo

HTTPS Encryption

99.9% Uptime SLA

100% Success Rate

Dedicated Support


X Delayed SERP


Data from Google and Bing

HTTPS Encryption

99.9% Uptime SLA

100% Success Rate

Dedicated Support

Join our Monthly Membership

Find the perfect plan for you — 100% satisfaction guaranteed.