Grade your search
Grade your current search experience & get a free personalized report with opportunities for improvement.
Products overview
Pricing
Pricing that scales with the value of your business
Search API
Powerful, hosted search API to create fast and relevant search
Visual Editor
Get control over Search and Discovery to reflect your business goals
Algolia AI
A suite of extensible fully managed AI & Machine Learning APIs
Crawler
Automatically extract and enrich your website content
Rules
Optimize results ranking for your users’ queries
AI Search
A family of AI algorithms that optimize every dimension of Search and Discovery
InstantSearch
A set of UI components to design the perfect experience
Personalization
Tailor the Search and Discovery to your users
Recommendations
Flexible recommendation machine learning API
Dynamic Synonym Suggestions
AI generated synonyms to get users to relevant results no matter the words they use
Analytics
Understand your users, uncover hidden opportunities
Answers for Publishers
Natural language search to find answers deep within content
Dynamic Re-ranking
Optimizes the ranking of results for each search for higher conversion rate
A/B Testing
Uncover the best performing relevance strategies
Answers for Support
ML-powered Q&A search to reduce support costs
Personalized Query Suggestions
Guide your users to the right content with personalized search query suggestions
Get inspired by 200+ customer examples and take your search and discovery experience to the next level.
Looking for our logo?
We got you covered!
Developers
Ecommerce
Media
Algolia’s search-as-a-service and full suite of APIs allow teams to easily develop tailored, fast Search & Discovery experiences that delight and convert.
Trusted by10K+customers
Serving100B+queries / month
Grade your current search experience & get a free personalized report with opportunities for improvement.
Ecommerce
Your users want an intuitive shopping experience. Algolia enables teams to create a personalized site Search & Discovery experience that customers will love.
Media
Users are looking to consume engaging content. Algolia empowers teams to surface the freshest and most relevant content, and ultimately drive user satisfaction.
Apps
Every product deserves a bespoke Search & Discovery experience. Algolia’s flexible APIs and UI toolkits provides teams with the resources necessary to build the experience best suited for your needs.
Our mission is to give development teams the building blocks to create a fast, relevant search experience. Extensive documentation & guides, an active community, 24/7 support make it a pleasure to work with Algolia.
my_index = client.init_index('contacts')my_index.save_object :firstname => "Jimmie",:lastname => "Barninger",:company => "California Paint"
class Contact < ActiveRecord::Baseinclude AlgoliaSearchalgoliasearch doattribute :firstname, :lastname, :companyendend
myIndex = apiClient.init_index("contacts")myIndex.save_object({"firstname": "Jimmie","lastname": "Barninger","company": "California Paint"})
from django.contrib.algoliasearch import AlgoliaIndexclass YourModelIndex(AlgoliaIndex):fields = ('firstname', 'lastname', 'company')
$myIndex = $apiClient->initIndex("contacts");$myIndex->saveObject(["firstname" => "Jimmie","lastname" => "Barninger","company" => "California Paint",]);
/*** @ORM\Entity*/class Contact {/*** @var string** @ORM\Column(name="firstname", type="string")* @Group({searchable})*/protected $firstname;/*** @var string** @ORM\Column(name="lastname", type="string")* @Group({searchable})*/protected $lastname;/*** @var string** @ORM\Column(name="company", type="string")* @Group({searchable})*/protected $company;}
use Illuminate\Database\Eloquent\Model;use Laravel\Scout\Searchable;class Contact extends Model {use Searchable;}
const myIndex = apiClient.initIndex('contacts');myIndex.saveObject({firstname: 'Jimmie',lastname: 'Barninger',company: 'California Paint',})
Index<Contact> index = client.initIndex("contacts", Contact.class);index.saveObject(new Contact().setFirstname("Jimmie").setLastname("Barninger").setCompany("California Paint"));
import algolia.AlgoliaDsl._import scala.concurrent.ExecutionContext.Implicits.globalcase class Contact(firstname: String,lastname: String,company: String)val indexing: Future[Indexing] = client.execute {index into "contacts" `object` Contact("Jimmie","Barninger","California Paint")}
object := map[string]string{"firstname": "Jimmie","lastname": "Barninger","company": "California Paint"}res, err := index.SaveObject(object)
SearchIndex index = client.InitIndex("contacts");var contact = new Contact {FirstName = "Jimmie",LastName = "Barninger",Company = "California Paint"};index.SaveObject(contact);
val index = client.initIndex(IndexName("contacts"))val json = json {"firstname" to "Jimmie""lastname" to "Barninger""company" to "California Paint" }index.saveObject(json)
let myIndex = apiClient.getIndex("contacts")let n = ["firstname": "Jimmie","lastname": "Barninger","company": "California Paint"]myIndex.saveObject(n)
Index myIndex = apiClient.initIndex("contacts");JSONObject jsonObject = new JSONObject().put("firstname", "Jimmie").put("lastname", "Barninger").put("company", "California Paint");myIndex.addObjectAsync(jsonObject, null);
<div id="searchbox"></div><div id="refinement"></div><div id="hits"></div><script>const {searchBox,hits} = instantsearch.widgets;search.addWidgets([searchBox({container: "#searchbox"}),hits({container: "#hits"}),refinementList({container: "#refinement",attribute: "company"}),]);search.start();</script>
const App = () => (<InstantSearch><SearchBox /><Hits /><Pagination /><RefinementListattribute="company"/></InstantSearch>);
<RelativeLayoutxmlns:algolia="http://schemas.android.com/apk/res-auto"xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"><com.algolia.instantsearch.ui.views.SearchBoxandroid:id="@+id/search_box"android:layout_width="match_parent"android:layout_height="wrap_content"/><com.algolia.instantsearch.ui.views.Statsandroid:id="@+id/search_box"android:layout_width="match_parent"android:layout_height="wrap_content"/><com.algolia.instantsearch.ui.views.Hitsandroid:layout_width="match_parent"android:layout_height="wrap_content"algolia:itemLayout="@layout/hits_item"/></RelativeLayout>
<ais-instant-search><ais-search-box /><ais-refinement-listattribute="company"/><ais-hits /><ais-pagination /></ais-instant-search>
<ais-instantsearch><ais-search-box></ais-search-box><ais-refinement-list[attribute]="company"></ais-refinement-list<ais-hits></ais-hits></ais-instantsearch>
import InstantSearchoverride func viewDidLoad() {super.viewDidLoad()let searchBar = SearchBarWidget(frame: ...)let statsWidget = StatsLabelWidget(frame: ...)self.view.addSubview(searchBar)self.view.addSubview(statsWidget)InstantSearch.shared.registerAllWidgets(in: self.view)}
Secure
Algolia is committed to delivering a highly secure and compliant environment for our customers.
Reliable
We stand behind our service with an industry leading 99.999% SLA available on select plans with a 1000x rebate policy.
Scalable
70+ data centers on 6 continents to ensure a consistent experience for every user.