Down the Rabbithole: Task to Signal on 2 unique subgraphs === ###### tags: rabbithole # The Task ![](https://i.imgur.com/R7s1MiU.png) You can check it out [here](https://app.rabbithole.gg/quests/become-a-graph-curator). Your goal is to signal on subgraphs built on The Graph. >Total time taken: 1.5h Total gas cost: $37.87 But you get... 125 GRT which is ~$70 now # What is [The Graph?](https://thegraph.com/) >The Graph is an indexing protocol for querying networks like Ethereum and IPFS. Anyone can build and publish open APIs, called subgraphs, making data easily accessible. So imagine you're running a Defi protocol. To keep your app up to date can either: 1. Run a full node, maintain it, set it up, use energy, and sync data... then process it 2. Connect to infura API and sync data... then process it 3. Connect to a subgraph created on The Graph and use that data instead But how? 1. A DApp interacts with Ethereum through a **transaction** using their smart contract. 1. When processing said transaction, an **event** is emitted (or more) 1. The Graph constantly **scans** ethereum for events relevant to you. This information is then **stored** in response to your **events**. Now it's usable! 1. Now the Dapp can just **query** this indexed information in the form of a GraphQL query (this really popular format) and make use of the **stored data indexing capabilities**. # Signalling? First, we need to talk about roles. To signal, you have to be a curator! The namesake of this task requires you to find subgraphs and 'signal' that you think they're good. >They use their knowledge of the web3 ecosystem to assess and signal on the subgraphs that should be indexed by The Graph Network. Through the Explorer, curators are able to view network data to make signalling decisions. The Graph Network rewards curators that signal on good quality subgraphs with a share of the query fees that subgraphs generate. But how do you know if it's good? That was what took a large part of my 1.5h ![](https://i.imgur.com/ZQrtt2W.png) *this didn't really help* You can [view all the subgraphs](https://thegraph.com/explorer) you can signal on quite easily. Problem is, how do you pick a good one? When you read the [Bonding curve](https://thegraph.com/docs/curating#bonding-curve-101) for curators, you realise what you care about is: 1. Signal 2. Query fees 3. Most importantly, is this a legit graph So let's address this one by one ## Signal You can easily see how much is being signalled. My take here is, you should leverage on what other curators have put in but don't just go in all the way to the top few signalled subgraphs. That's because looking at the bonding curve, you'll get very little shares of the returns. Those subgraphs are good, let's just leave them be. ## Query fees **Query to signal ratio** Now here's there it gets strange. |Subgraph|Query fees (30D)|Signal|query/signal -|-|-|- Pooltogether | 1.6k | 221K | 0.0072 Livepeer | 4.4k | 288K | 0.0152 UMA mainnet voting | 3.9K | 203K |0.0192 DODOEX V2 | 1.8K | 153K |0.0117 RAI mainnet | 2.1K for v1.0.0, v.1.0.1 don't have | 150K | ??? Audius Network Mainnet | 1.9 | 148K | ??? Opyn Gamma Mainnet | 1.7K | 146K | 0.0116 mStable Protocol | 2K | 136K | 0.014 Enzyme Finance | 2K | 125K | 0.016 So it seems that query fees in general are a little low(?) I suppose that's because The Graph is quite new! I think when there's more uses people will query this graph more. I just use a simple metric to try to estimate what's a better graph to signal on with a signal > 110K. Why 110k? I don't know I thought it seemed decent, as of now that's about 55k (28Jul21). this means our top candidates are UMA mainnet voting, Enzyme Finance, Livepeer, and mStable protocol. What now? **Query regularity** My next consideration was the regularity of queries. **UMA mainnet voting** ![](https://i.imgur.com/MrQXF94.png) Big spike then not much **Enzyme Finance** ![](https://i.imgur.com/Hukn2V4.png) Okay seems like you need to query it regularly **Livepeer** ![](https://i.imgur.com/KZq5QNj.png) Seems very spiky too **mStable protocol** ![](https://i.imgur.com/0cLhpjL.png) Okay also seems like need to query it regularly but a little bit spiky. So I've decided to go with Enzyme and mStable. ## Is this a legit graph? There's a [great article on this by jacksonhblau](https://www.yumpu.com/en/document/view/65777508/verifying-subgraphs-and-estimating-query-traffic-v2) tldr CSI the github repo, check that the project is real. think about what kind of project this is because if its a Defi project, it probably needs lots of data so signal on that. # My Process Ready? Let's go. I'll be using the transactions I've actually made as reference if you're curious. 1. First, make sure Metamask is set to ‘Ethereum Mainnet’ and you have enough ETH to cover all the transaction fees. 2. Add GRT token to Metamask bought 89 GRT (51USD) on [uniswap](https://etherscan.io/tx/0xa01708357640e33465b1e5f6953d96d25e89df40e6355f0b34ad79b17d28f64c) with gas fee of $18.33, 37 Gwei Token Contract Address: 0xc944e90c64b2c07662a292be6244bdf05cda44a7 Token Symbol: GRT Decimals of Precision: 18 8. Approved singalling on The Graph with [transaction](https://etherscan.io/tx/0xe85c52b041defd9c2a37005468c590b4ab23b8622884b39eccd85fbbb37eb299) 9. Signalled 50 GRT on [Enzyme](https://etherscan.io/tx/0x9faf99469c2bf2cc8e59184d0d00b8bf096057df400dd6b312361926ecb2f0f4) with gas of $10.90, 20 Gwei, and 39 GRT on [mStable](https://etherscan.io/tx/0x279fc68878553bf9f401ac6875f1fc4478f017c7ec70335aad7f8805932bfdb0) with gas of $8.64, 18 Gwei 10. Remember to redeem on the task and redeem on the quest! I almost forgot to redeem on the quest because I thought I was done... Rabbithole why you do this to me (just kidding) ![](https://i.imgur.com/MKMHDb5.png) 10. Because I'm paranoid, best to check you're on the redeemer list! ![](https://i.imgur.com/u4tBcxo.png) 11. Under the overview portion of The Graph, you can see your share valu ![](https://i.imgur.com/bcseovU.png) So that's it! Feel free to ping me for feedback, thank you for reading :)